【发布时间】:2012-03-19 22:04:57
【问题描述】:
我有一个 ListBox ItemTemplate,其中有一个 CheckBox,它绑定到我在我的应用程序中维护的 List。
我的 XAML:
<ListBox x:Name ="lstTasks">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="30,12,0,0">
<CheckBox IsChecked="{Binding use}" Unchecked="CheckBox_Unchecked" Tag="{Binding key}" Checked="CheckBox_Checked" />
<TextBlock Width="160" Text="{Binding key}" Margin="20,18,0,0" />
<TextBlock Text="{Binding value}" Margin="0,18,0,0"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
还有:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
lstTasks.ItemsSource = null;
lstTasks.ItemsSource = a.Words; //a.Words is the List<DataClass>
}
我观察到,当我滚动这些项目的列表时,Checked 和 Unchecked 事件会自行触发。我对这些事件附加了逻辑,它们通过检查和取消检查随机条目来搞砸整个事情。这在我取消选中其中一项后开始。 (默认所有项目都被选中)
我是 WPF 和 Windows Phone 的新手,我做错了什么?
【问题讨论】:
标签: silverlight windows-phone-7 data-binding