2

チェックされたノード ID を持つリストを分析し、TreeList の既存の ID にチェックインするコードの一部があります。(私はXtraTreeListコントロールを使用しています)

チェックされたノードごとに金額を計算したいのですが、ノードがチェックされたときにこれを作成します。

TreeList のノードがコード (プログラム) からチェックされたことを観察するイベントはありますか?

マウスまたはキーボードを使用してノードをチェック/チェック解除すると、 BeforeCheckNodeおよびAfterCheckNodeイベントが発生しますが、コードからノードをチェックすると発生しません。

foreach (TreeListNode item in tln) {
    var nodeID = (this.tlServices.GetDataRecordByNode(item) as __ServiceInfo).ID;
    if (svc.Select(value => value.Model.service.id).Contains(nodeID)) {
        item.Checked = true;
    }
    else if (item.HasChildren) {
        this.FindNode(item.Nodes, svc);
    }
}
4

2 に答える 2

3

TreeList.NodeChangedイベントを使用できます。

void treeList1_NodeChanged(object sender, NodeChangedEventArgs e) {
    if(e.ChangeType == NodeChangeTypeEnum.CheckedState) { 
        // do something
    }
}
于 2011-11-14T14:19:15.907 に答える
-1

AfterCheckNode はイベントです。

private void _tree_AfterCheckNode(object sender, DevExpress.XtraTreeList.NodeEventArgs e)
    { TreeListNode node = e.Node as TreeListNode;}
于 2012-06-13T02:39:23.007 に答える