我初始化在設計代碼的組件:設計師外製作樹節點不可選的,但仍然功能
private void InitializeComponent(){
this.treeViewCategory.Name = "treeViewCategory";
this.treeViewCategory.Size = new System.Drawing.Size(287, 303);
this.treeViewCategory.TabIndex = 14;
this.treeViewCategory.DoubleClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeViewCategory_TreeNodeMouseClickEventHandler);
}
,我修改:
this.treeViewCategory.Update();
TreeNode node = this.treeViewCategory.Nodes.Add("Node 1");
node.Name = "Node 1";
node.Nodes.Add("Node 1-Child");
node = this.treeViewCategory.Nodes.Add("Node 2");
node.Name = "Node 2";
node.Nodes.Add("Node 2-Child 1");
node.Nodes.Add("Node 2-Child 2");
this.treeViewCategory.ExpandAll();
this.treeViewCategory.EndUpdate();
我想節點1和節點2是功能但不可選。因此,單擊節點1或節點2將展開/收縮分支,但節點本身未突出顯示。
private void treeViewCategory_TreeNodeMouseClickEventHandler(object sender, TreeNodeMouseClickEventArgs eventArgs)
{
TreeView treeView = (TreeView)sender;
TreeNode treeNode = eventArgs.Node; // parent or child
String nodeText = treeNode.Text;
// if parent node
if (nodeText.Contains("Node 1") || nodeText.Contains("Node 2")) {
// don't select the node
}
else { // child
}
}
在treeViewCategory_TreeNodeMouseClickEventHandler
,我父母和孩子之間的區別,但我看到什麼,做什麼,我想要它做的。
不要修改設計代碼! – TaW
難道你不能只選擇事件中的子節點嗎?你打算如何選擇帶鍵盤的節點? – stuartd
@TaW:在我的示例中,您看到設計器代碼在哪裏修改? –