ListView右击菜单问题
winform做的小程序,在程序载入的时候,会读取数据库的数据来创建根节点和子节点。设计时,为treeview添加了NodeMouseClick事件,并判断是右击时,显示ContextMemuScript。在右击菜单中有个添加节点的功能。以上说的功能都能实现。但是如果我用右击菜单中的添加节点来添加一个根节点,这时候右击这个节点,菜单是不会显示的,但是debug的话,能跑到NodeMouseClick事件里。感觉很是困惑。
这个是右击事件
这个是添加节点事件
这个是右击事件
private void tvTable_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
cmsNodeRightMemu = new ContextMenuStrip();
// Point ptMemuPosition =PointToScreen( new Point(e.Node.Bounds.X + e.Node.Bounds.Width, e.Node.Bounds.Y ));
cmsNodeRightMemu.TopLevel = true;
cmsNodeRightMemu.Show(tvTable,e.X,e.Y);
}
}这个是添加节点事件
private void bbbbToolStripMenuItem_Click(object sender, EventArgs e)
{
bool hasSameNode = false;
string strRootNodeName = string.Empty, strSelectNode = string.Empty;
int intSelectNodeLevel = -1;
intSelectNodeLevel = tvTable.SelectedNode.Level;
strSelectNode = intSelectNodeLevel == 0 ? "Root" : "Sub";
strRootNodeName = Interaction.InputBox("Please Input " + strSelectNode + " Node", "Add", "New", -1, -1);
hasSameNode = ExistsSameNodeInSameLevel(strRootNodeName, intSelectNodeLevel, tvTable.SelectedNode.Parent);
while (hasSameNode)
{
MessageBox.Show("Has Same Node");
strRootNodeName = Interaction.InputBox("Please Input " + strSelectNode + " Node", "Add", "New", -1, -1);
hasSameNode = ExistsSameNodeInSameLevel(strRootNodeName, intSelectNodeLevel, tvTable.SelectedNode.Parent);
}
TreeNode trAddedNode, trSubNode;
if (intSelectNodeLevel == 0)
{
trSubNode = new TreeNode("NewChildNode");
trSubNode.Tag = intAddNodeMaster;
trSubNode.Name = "NewChildNode";
trSubNode.ContextMenuStrip = cmsNodeRightMemu;
trAddedNode = new TreeNode(strRootNodeName, new TreeNode[] {trSubNode });
trAddedNode.Name = strRootNodeName;
trAddedNode.ContextMenuStrip = cmsNodeRightMemu;
tvTable.Nodes.Add(trAddedNode);
}
else
{
trAddedNode = new TreeNode(strRootNodeName);
trAddedNode.Tag = intAddNodeMaster;
trAddedNode.Name = strRootNodeName;
trAddedNode.ContextMenuStrip = cmsNodeRightMemu;
tvTable.SelectedNode.Nodes.Add(trAddedNode);
}
}
...全文
相关推荐
包含编辑器,右击菜单,syslist绑定数据,systoolbar等等控件,
包含编辑器,右击菜单,syslist绑定数据,systoolbar等等控件,里面包含源码还未开发完全
ListView案例两个,右击菜单+排序
ListView 上进行右击菜单操作 的右击菜单编辑,点击头部时进行排序,可多选进行右击复制。此为原创。 第二案例,ListView的添加条目
Android之用PopupWindow实现弹出listview形式的菜单
大家可自行学习,研究,并补充该demo.
ListView实现二级菜单
SQLite数据库的使用,以及如何通过双ListView实现二级菜单。
仿百度外卖、美团外卖、淘点点等左右联动ListView菜单展示
仿百度外卖、美团外卖、淘点点等左右联动ListView菜单展示



