我在GridViewColumn中有一个复选框,用于显示/更改数据库值 . 复选框的单击事件用于数据库中的更改值 . 为了处理属性状态“IsChecked”我正在使用datatrigger和setter,下面是se xaml代码:
<Style TargetType="CheckBox">
<Setter Property="IsEnabled" Value="True" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=ID, Converter={StaticResource Converter}}" Value="true">
<Setter Property="IsChecked" Value="True"/>
</DataTrigger>
</Style.Triggers>
</Style>
绑定工作很好,直到我单击复选框 . 在我第一次单击该复选框后,如果数据库中的手动更改了映射到属性“IsChecked”的值,则属性“IsChecked”的状态不会更新 . 如果我将相同的值映射到复选框的属性“内容”,即使在我单击复选框后触发器也能正常工作 .
有没有人没有问题是什么?
3 回答
而不是使用Click来确定更改,也许您可以使用Checked和Unchecked事件?
您可以尝试添加第二个数据触发器以将复选框设置为false . 正如我从您的代码中看到的那样,您只将IsChecked设置为true,但永远不会为false .
不能
而是:
编辑:
你可以试试这个: