1

我有一个将 Xceed DataGrid 用于 WPF 的应用程序。在其中我有一列有一个复选框,我希望IsCheckedorChecked事件调用一个函数。问题在于我所做的一切我要么得到一个正在运行的应用程序,除了切换复选框之外什么都不做,或者我得到以下异常:

Failed to create a 'Checked' from the text 'CheckBoxChecked'

我想做的就是以某种方式绑定复选框以在用户切换它时调用一个函数。我对 WPF 绑定框架还是有点陌生​​。我添加了在创建 DataTemplate 时使用的与此列相关的一小段代码:

<DataTemplate>
    <StackPanel Orientation="Horizontal">
        <CheckBox Checked="CheckBoxChecked" />
    </StackPanel>
</DataTemplate>

提前感谢您的帮助。

4

1 回答 1

1

我可以建议您采用更 WPF 正确的方法吗?您将复选框绑定到一个属性,然后在此属性更改时做出反应:

XAML:

<DataTemplate>
    <StackPanel Orientation="Horizontal">
        <CheckBox IsChecked="{Binding IsSomething}" />
    </StackPanel>
</DataTemplate>

在您的 DataContext 类中:

    private bool isSomething;
    public bool IsSomething
    {
        get { return isSomething; }
        set
        {
            isSomething = value;
            DoSomething();
        }
    }
于 2013-02-13T13:05:58.053 回答