我有一个包含CheckBox的简单XAML ListView(这是一个简单的ToDo检查列表功能)。
该列表显示正常,但是首次显示该列表时会触发CheckBox CheckedChanged事件。我猜是正确的,因为CheckBox IsChecked值是由数据绑定设置的,但是这不是预期的/预期的。
代码中的行为正确吗?
我该怎么做才能防止这种情况发生?另外,如果/当我刷新列表时。
<ListView ItemsSource="{Binding}" ItemTapped="OnEditStory" SeparatorVisibility="None">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout BackgroundColor="#eee" Orientation="Vertical">
<StackLayout Orientation="Horizontal">
<Label Text="{Binding Name}"
TextColor="#f35e20" />
<Label Text="{Binding Number}"
TextColor="#503026" />
<CheckBox IsChecked="{Binding IsClosed}" CheckedChanged="OnCheckBoxCheckedChanged" HorizontalOptions="EndAndExpand"/>
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我希望仅当我/用户实际在GUI中更改值(即选中或取消选中CheckBox)时,才触发CheckedChange事件。