0
我目前使用ICollectionView,myCollectionView綁定到ObservableCollection。該集合的內容是從ComboBox中選擇的。每個集合項myCollectionItem都有一個VisualBrush myVisualBrush作爲子項,CurrentItem的畫筆顯示在預覽面板中。WPF綁定到當前項目不更新的孩子
集合項還是一個子對象myItemChild,它包含許多用於生成滑塊的屬性。此滑塊會更改預覽面板上的屬性。
這一切都按預期工作。
當集合視圖的CurrentItem被更改時,預覽面板會正確更新,但滑塊將繼續顯示以前的CurrentItem的myItemChild。
對myItemChild的更改沒有提出,我該如何處理這種情況?
它很有可能我錯過了一些明顯的東西,所以任何指針讚賞。
問候
羅布
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<!-- Combo Box for selection of item-->
<ComboBox Grid.Row="0" ItemsSource="{Binding myCollectionView, Mode=TwoWay}" IsSynchronizedWithCurrentItem="True">
<ComboBox.ItemTemplate>
<DataTemplate DataType="{x:Type vm:myCollectionItem}" >
<StackPanel>
<Rectangle Height="40" Width="40" Fill="{Binding myVisualBrush}"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<!-- Panel to preview item-->
<ContentControl Grid.Row="1" Content="{Binding myCollectionView/}">
<ContentControl.ContentTemplate>
<DataTemplate DataType="{x:Type vm:myCollectionItem}" >
<Rectangle Margin="20" Fill="{Binding myVisualBrush}" />
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
<!-- Slider to edit item-->
<ContentControl Grid.Row="2" Content="{Binding myCollectionView/}">
<ContentControl.ContentTemplate>
<DataTemplate DataType="{x:Type vm:myCollectionItem}" >
<ContentControl Content="{Binding myItemChild}">
<ContentControl.ContentTemplate>
<DataTemplate DataType="{x:Type vm:myCollectionItemChild}" >
<StackPanel>
<Label Content="{Binding myValueLabel, Mode=OneWay}"/>
<Slider Value="{Binding myValue, Mode=TwoWay}" Maximum="{Binding myValueMax}" Minimum="{Binding myValueMin}"/>
</StackPanel>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
</Grid>
騎士你爲什麼要在綁定中使用斜線?刪除它,寫內容=「{Binding myItemChild}」 – vorrtex 2011-02-14 16:16:01
@vorrtex當我簡化代碼時,這是一個錯字。應該在myCollectionView上指示CurrentItem。我編輯了這個問題。謝謝 – rjw 2011-02-14 16:21:53