我有以下代码在kmltreeview中创建一个文件夹:
var folder = ge1.createFolder("Mobiles");
folder.setName("Mobiles");
kmlTreeView1.ParseKmlObject(folder);
由于某些原因,使用此代码,NodeMouseClick函数以“Mobiles”节点作为'e'参数触发:
如果我注释掉代码,事件就不会触发。如果我添加更多文件夹,那么也会触发事件。
(我没有点击任何东西 - 只需要F5开始并让它运行。)
有什么想法吗?
答案 0 :(得分:1)
当节点作为三态检查机制的一部分添加到KmlTreeView时,会触发NodeMouseClick事件。此模拟点击用于检查是否应检查,部分检查或取消选中KmlContainer。设置此状态时,将触发NodeMouseClick事件,但给定的按钮为无。
因此,您可以通过查看按下哪个按钮来启动点击,轻松测试以自动筛选此自动检查。
var folder = ge1.createFolder("Mobiles");
folder.setName("Mobiles");
kmlTreeView1.ParseKmlObject(folder);
kmlTreeView1.NodeMouseClick += (o, e) =>
{
if (e.Button == MouseButtons.None)
{
// no actual mouse click...
return;
}
// handle user interactions
};