Thanks for taking a look at this. Caliburn.Micro is a framework that utilizes MVVM. Naming conventions are important. I did make an error in my original query, for this form, the bindable collection isn't necessary. I've attached three files for your review. The form I'm working on is a customer modification form so for this, I've already selected the customer I want to modify from a list on a different form and passed the customer id to the ModifyCustomerView form via the ModifyCustomerViewModel. I retrieve the customer record and load it into a property of type CustomerModel named SelectedCustomer. I then have full properties for each of the fields in the model. The names and datatypes match those in the model.
The view is built when a control will display the desired field value, for instance there is a TexBox for address line 1. Once the customer record has been retrieved I get it display address line one with the following XAML code
MinWidth="60" Margin="0 0 0 0"></TextBox>
Caliburn.Micro uses x:Name to identify what is being displayed. The first half of the name is the property holding the customer record followed by an underscore and then the field name that exactly matches the corresponding property in the view model and model.
I can get the phone number to display with a TextBox or your sfMaskedEdit but I cannot format the information.
I had the phone numbers defined as string originally but yesterday I changed the type to int.
I've attached the three class files just discussed, let me now if this helps or if you need more information. This is really driving me nuts.