Bindings are loosely typed—properties are specified as strings, and can be misspelled. For example, writing
FirstNam instead of
FirstName in the previous examples does not cause any exception to be thrown; the binding silently fails. The only other indication that something went wrong can be found in the Visual Studio Output window (View | Output from the menu) if the program is run under a debugger:
Error: BindingExpression path error: 'FirstNam' property not found on 'ElementObjectBinding.Person'. BindingExpression: Path='FirstNam' DataItem='ElementObjectBinding.Person'; target element is 'Windows.UI.Xaml.Controls.TextBlock' (Name='null'); target property is 'Text' (type 'String')
This text pinpoints the exact problem, specifying ...