winform 中的treeview.为什么在BeforeCheck 中e.cancel =true 还能选中? xp下面可以组织,win7就不行?why?

javaoraspx 2014-03-19 08:03:59
winform 中的treeview.为什么在BeforeCheck 中e.cancel =true 还能选中? xp下面可以组织,win7就不行?why?

代码:

private void Form1_Load(object sender, EventArgs e)
{
TreeView1.ExpandAll();
}

private void TreeView1_BeforeCheck(object sender, TreeViewCancelEventArgs e)
{
if (e.Node.Level == 0)
{
e.Cancel = true;
}
}

private void TreeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
if (e.Node.Level == 0)
{
e.Node.Checked = false;
}
}

win7 效果:

xp 是下面不能选中...为什么win7就可以?
...全文
163 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
javaoraspx 2014-03-20
  • 打赏
  • 举报
回复
顶下.....不然就沉了 .
本拉灯 2014-03-19
  • 打赏
  • 举报
回复
可能是BUG吧。按慢点是无法打勾的,要是按快点,连续两三下。就会勾上。。
javaoraspx 2014-03-19
  • 打赏
  • 举报
回复


就这么几行代码还能怎么事件关联呢? 专门做的test程序呢

引用 1 楼 devmiao 的回复:
检查下事件处理程序是否关联上事件,或者说你的代码有没有被执行。
javaoraspx 2014-03-19
  • 打赏
  • 举报
回复
关键是在xp 上面你怎么点都不会选中.唯独win7...............我哭
javaoraspx 2014-03-19
  • 打赏
  • 举报
回复
引用 1 楼 devmiao 的回复:
检查下事件处理程序是否关联上事件,或者说你的代码有没有被执行。

看截图..怎么可能没有被执行到呢?
devmiao 2014-03-19
  • 打赏
  • 举报
回复
检查下事件处理程序是否关联上事件,或者说你的代码有没有被执行。

110,477

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧