私が作成した Node が設定された treeView があります。いくつかのノード クラスがあり、すべてが treeNode から継承されます。
(GUI ダイアログを使用して) ノードを編集すると、別のクラスに変更される可能性があるため、そのプロセスで新しいノードを作成し、選択したノードを新しいノードに置き換えようとしていますが、うまくいきません。ノードは古いままで、何が間違っているのかわかりません。
コード:
TreeNodeMission mission = (TreeNodeMission)treeView.SelectedNode;
TreeNodeMission newMission = ChangeMissionDialog(mission);
treeView.SelectedNode = newMission; // doesn't work
また、削除して追加しようとしましたが、機能しません
index = treeView.Nodes.IndexOf(treeView.SelectedNode); // index returns -1
treeView.Nodes.Remove(treeView.SelectedNode);
treeView.Nodes.Insert(index, newMission);
私は何を間違っていますか?
更新: treeView.SelectedNode は null ではなく、選択した有効なノードです。