DevExpress'的复选框列的选中事件;wpf中的数据网格控制

DevExpress'的复选框列的选中事件;wpf中的数据网格控制,wpf,devexpress,Wpf,Devexpress,我想对wpf中DevExpress的DataGrid控件的复选框列的选中事件执行一些任务。要跟踪相应布尔列的值何时更改,我建议您处理该事件: 要直接在单元编辑器上跟踪选中/未选中事件,可以使用以下方法: ((TableView)gridControl.View).ShownEditor += TableView_ShownEditor; ((TableView)gridControl.View).HiddenEditor += TableView_HiddenEditor; //... voi

我想对wpf中DevExpress的DataGrid控件的复选框列的选中事件执行一些任务。

要跟踪相应布尔列的值何时更改,我建议您处理该事件:

要直接在单元编辑器上跟踪选中/未选中事件,可以使用以下方法:

((TableView)gridControl.View).ShownEditor += TableView_ShownEditor;
((TableView)gridControl.View).HiddenEditor += TableView_HiddenEditor;
//...

void TableView_ShownEditor(object sender, EditorEventArgs e) {
    if(e.Column.FieldName == "BooleanProp") {
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Checked += BooleanPropCheckEdit_Checked;
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Unchecked += BooleanPropCheckEdit_Unchecked;
    }
}
void TableView_HiddenEditor(object sender, EditorEventArgs e) {
    if(e.Column.FieldName == "BooleanProp") {
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Checked -= BooleanPropCheckEdit_Checked;
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Unchecked -= BooleanPropCheckEdit_Unchecked;
    }
}
void BooleanPropCheckEdit_Checked(object sender, RoutedEventArgs e) {
    // do something
}
void BooleanPropCheckEdit_Unchecked(object sender, RoutedEventArgs e) {
    // do something
}

问题在哪里?你试过什么吗?或者这只是一个世界信息?
((TableView)gridControl.View).ShownEditor += TableView_ShownEditor;
((TableView)gridControl.View).HiddenEditor += TableView_HiddenEditor;
//...

void TableView_ShownEditor(object sender, EditorEventArgs e) {
    if(e.Column.FieldName == "BooleanProp") {
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Checked += BooleanPropCheckEdit_Checked;
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Unchecked += BooleanPropCheckEdit_Unchecked;
    }
}
void TableView_HiddenEditor(object sender, EditorEventArgs e) {
    if(e.Column.FieldName == "BooleanProp") {
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Checked -= BooleanPropCheckEdit_Checked;
        ((DevExpress.Xpf.Editors.CheckEdit)e.Editor).Unchecked -= BooleanPropCheckEdit_Unchecked;
    }
}
void BooleanPropCheckEdit_Checked(object sender, RoutedEventArgs e) {
    // do something
}
void BooleanPropCheckEdit_Unchecked(object sender, RoutedEventArgs e) {
    // do something
}