Silverlight DataForm不显示正确的初始值

时间:2012-10-16 14:05:05

标签: mvvm silverlight-5.0 dataform

我正在尝试强制DataForm显示与第一个ItemsSource列表不同的初始值,但没有成功。

我正在使用MVVM模式。

我只是将ItemsSource绑定到Customers列表(所有客户),然后将CurrentItem绑定到我想要作为DataForm上的初始项显示的一个客户:

     <toolkit:DataForm Height="292"
                    HorizontalAlignment="Left"
                    ItemsSource="{Binding Path=Customers}"
                    CurrentItem="{Binding SelectedCustomer}"
                    Margin="88,122,0,0"
                    Name="customerDataForm"
                    VerticalAlignment="Top"
                    Width="342" />

在view模型中我设置了:

  void loadOpCustomers_Completed(object sender, EventArgs e) {
     Customers = _Context.Customers;
     SelectedCustomer = Customers.Where(c => c.CustomerID == initialCustomerID).FirstOrDefault();
  }

当我调试它时,SelectedCustomer拥有我想要的确切客户,但DataForm坚持要显示第一个客户列表。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

在XAML中添加绑定模式:

ItemsSource="{Binding Path=Customers}"
CurrentItem="{Binding SelectedCustomer,Mode=TwoWay}"

确保您的ViewModel实现了INotifyPropertyChanged。