0
我有我的查看頁面與GridView控件。在網格項目使用彈出Childwindows與下面的XAML代碼編輯:Silverlight DataForm + ChildWindows + MVVM:ComboBox的DataField不會被填充
<toolkit:DataForm.EditTemplate>
<DataTemplate>
<StackPanel>
<toolkit:DataField Label="Avisar a: ">
<ComboBox ItemsSource="{Binding Path=Sucursales}"/>
</toolkit:DataField>
<toolkit:DataField Label="Mensaje:">
<TextBox Text="{Binding mensaje, Mode=TwoWay}"/>
</toolkit:DataField>
<toolkit:DataField Label="Estado: ">
<ComboBox ItemsSource="{Binding Path=EstadosMensaje}"/>
</toolkit:DataField>
</StackPanel>
</DataTemplate>
</toolkit:DataForm.EditTemplate>
</toolkit:DataForm>
的DataContext到這個彈出注射視圖構造從父視圖如下:
AlertaForm frm = new AlertaForm(DataContext as AlertasViewModel);
frm.Show();
//ChildWindows constructor
public AlertaForm(AlertasViewModel viewModel){
InitializeComponent();
DataContext = viewModel;
}
正如你所看到的,ChildWindows和父視圖共享相同的ViewModel。 問題是ComboBox控件不會被填充。 TextBox字段綁定正確,它們顯示來自DataContext屬性的值,這是令人困惑的,因爲這證明DataForm識別傳遞給ChildWindows AlertaForm的ViewModel。 顯然我在這裏失去了一些東西,但無法弄清楚是什麼。 由於