c# Treeview,如何判断双击选中的是父节点??
Treeview中显示从数据库中读取的数据,为:-家人爸爸妈妈-朋友蛋蛋皮皮现在要判断NodeMouseDoubleClick()事件,具体为鼠标双击是否选中了父节点(家...
Treeview中显示从数据库中读取的数据,为:
-家人
爸爸
妈妈
-朋友
蛋蛋
皮皮
现在要判断NodeMouseDoubleClick()事件,具体为鼠标双击是否选中了父节点(家人/朋友),如果是则不执行任何操作,只是展开子节点;如果双击选中的是子节点(爸爸/妈妈/蛋蛋/皮皮)则执行另外的操作。
说明:
窗体中Treeview控件的Name属性设置为tvRelation,双击选中的节点的获取方式为
string relation = tvRelation.SelectedNode.Text;
要求判断的代码不允许为这种形式:
if(relation == "家人" || relation == "朋友"){}
必须是判断双击选中的是否为父节点形式才行。
请问要怎么做?谢谢! 展开
-家人
爸爸
妈妈
-朋友
蛋蛋
皮皮
现在要判断NodeMouseDoubleClick()事件,具体为鼠标双击是否选中了父节点(家人/朋友),如果是则不执行任何操作,只是展开子节点;如果双击选中的是子节点(爸爸/妈妈/蛋蛋/皮皮)则执行另外的操作。
说明:
窗体中Treeview控件的Name属性设置为tvRelation,双击选中的节点的获取方式为
string relation = tvRelation.SelectedNode.Text;
要求判断的代码不允许为这种形式:
if(relation == "家人" || relation == "朋友"){}
必须是判断双击选中的是否为父节点形式才行。
请问要怎么做?谢谢! 展开
3个回答
展开全部
如果你说的父节点是根结点,判断:
TreeNode node=treeView1.SelectedNode;
if(node.Parent==null)
node.Expand();
else
ToDo:响应
其实一般不会这样做。因为节点很多情况下是超出两级的。你可以利用node.Tag属性。
比如在加载的时候,把结点分类别,保存到node.Tag属性中。点击节点时,判断该属性值就可以了,当然还用其它方法,比如利用节点的Name属性。象这样:
TreeNode node=treeView1.SelectedNode;
if(node.Tag.ToString()==“父结点”)
node.Expand();
else
ToDo:响应
TreeNode node=treeView1.SelectedNode;
if(node.Parent==null)
node.Expand();
else
ToDo:响应
其实一般不会这样做。因为节点很多情况下是超出两级的。你可以利用node.Tag属性。
比如在加载的时候,把结点分类别,保存到node.Tag属性中。点击节点时,判断该属性值就可以了,当然还用其它方法,比如利用节点的Name属性。象这样:
TreeNode node=treeView1.SelectedNode;
if(node.Tag.ToString()==“父结点”)
node.Expand();
else
ToDo:响应
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以判断节点的深度
家人 朋友 的深度是 0,它的下一级的节点深度是就是 1 ,以此类推。
获取节点深度:
treeview1.SelectedNode.Level
家人 朋友 的深度是 0,它的下一级的节点深度是就是 1 ,以此类推。
获取节点深度:
treeview1.SelectedNode.Level
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
tvRelation.Nodes.Count == 0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询