如果我在同一視圖中將主控和細節保持在一起,我可以使主控細節方案正常工作。不過,我希望能夠根據用戶安全性定製細節演示。因此,我使用與後端相同的視圖模型將細節部分移至單獨的視圖。現在當選擇新的主記錄時,細節不會正確更新。如果這兩個視圖使用相同的viewmodel,不應該這樣工作很好嗎?就像我說的,當代碼在同一個視圖中時,它就可以正常工作。WPF中的單獨視圖中的主控細節
詳細XAML:
<ListView x:Name="DoctorOfficesList"
Grid.Column="1"
Background="black"
HorizontalContentAlignment="Stretch"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding Path=SelectedDoctor.DoctorOfficesCollection}"
ItemTemplate="{StaticResource DoctorOfficesListTemplate}">
</ListView>
主XAML:
<ListBox x:Name="DoctorHeaderList"
Grid.Column="0"
MinWidth="200"
MaxWidth="300"
Margin="0,0,2,0"
Background="black"
ItemsSource="{Binding Path=DoctorsList}"
SelectedItem="{Binding Path=SelectedDoctor}"
IsSynchronizedWithCurrentItem="True"
ItemTemplate="{StaticResource DoctorsListTemplate}"
ScrollViewer.HorizontalScrollBarVisibility="Hidden">
</ListBox>
我曾嘗試多種方法來得到這個工作。當列表框處於相同視圖時,所有方案都可以工作。當分開移動時,他們停止。如果它很重要,我也使用PRISMv2。
我想我的具體問題是我如何得到這個工作?我真的需要一個事件嗎?我會認爲,因爲他們綁定到同一個虛擬機這將是一個快照。
只是肯定的: 1)您是否正確指定了datacontext? 2)您是否嘗試過使用事件來調試? (檢查SelectedDoctor是否存在等) 3)輸出窗口中的任何綁定異常? – 2010-04-19 17:18:45
是的,就像我說過的,如果我將detailsview代碼移動到headerview中,它工作正常。它只有當我試圖將它們分開時。是的,選定的醫生存在......按照上述...... xaml中沒有任何變化,除了它在物理上的位置......沒有約束的例外 – ecathell 2010-04-19 18:04:55