我有一個ItemsControl與已定義的DataTemplate。我的ItemsControl定義如下所示:Silverlight + ItemsControl +獲取控件屬性值
<ItemsControl x:Name="myItemsControl" ItemsSource="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<CheckBox x:Name="myCheckBox" Content="{Binding Name}" />
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
這是我的DataTemplate的簡化版本。無論如何,當用戶點擊頁面上的按鈕時,我想遍歷myItemsControl中的項目並確定是否選中與該項目關聯的CheckBox元素。
如何確定CheckBox是否在ItemsControl中的特定項目中被選中?
謝謝!
沒有辦法實際獲得CheckBox而不是數據源本身嗎?我需要更改一些UI顏色等。這就是我試圖訪問CheckBox的原因。 – Villager 2010-03-22 00:48:40
總有辦法。但是,在ItemsControl中手動處理可視化項目是最糟糕的做法。如果您需要項目響應數據更改,請考慮將其封裝在UserControls中,並使用VisualStateManager狀態響應這些數據更改。 – JustinAngel 2010-03-22 22:39:16