【问题标题】:WPF Checkbox Command for Unchecked and Checked未选中和选中的 WPF 复选框命令
【发布时间】:2018-06-05 00:34:42
【问题描述】:

我在 .XAML 文件中有以下行:

<CheckBox x:Name="checker"  Grid.Column="1" Grid.Row="6" Command="{Binding LoadCommand}"></CheckBox>

现在我的问题是 - 为“选中”复选框和“未选中”复选框设置不同命令的最佳方式是什么。

在我的 ViewModel 中,我有两个不同的函数(LoadCommand 和 LoadActiveCommand),一个应在选中复选框时加载,另一个应在未选中复选框时加载。

获得我想要的结果的最佳方法是什么?有没有办法直接在 .XAML 文件中执行此操作,还是我必须在 xaml.cs 中执行此操作?

【问题讨论】:

  • this answer
  • 也许最简单的方法是将IsChecked(或将其作为CommandParameter 传递)绑定到某个属性,您可以在命令事件处理程序中检查该值。
  • 首先,您没有在 xaml 中分配 IsChecked 属性,因此它始终为 false。其次,如果你这样做了,那么你已经有了一个可以在 ViewModel 中使用的属性,这意味着该命令应该依赖于你用来绑定到 IsChecked 属性的属性。

标签: c# wpf visual-studio xaml checkbox


【解决方案1】:

您可以绑定到 setter 并根据值执行操作,而不是绑定到命令,例如:

public bool LoadCommand
{
    set
    {
        if(value == true)
        {
            // do something;
        }
        else
        {
            //do something else;
        }
}

【讨论】:

    猜你喜欢
    • 2021-01-04
    • 1970-01-01
    • 2013-02-05
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 1970-01-01
    • 2013-07-22
    • 2018-06-24
    相关资源
    最近更新 更多