WPF控件外点击事件问题

puppywin 2010-04-11 02:34:21
如果我做了个dropdown的控件 我想在鼠标不在这个控件上点击下去的时候 这个dropdown 收起来 有什么办法 或者什么事件可以激发这个效果 谢谢~~
...全文
620 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Foxer 2010-04-12
  • 打赏
  • 举报
回复
需要捕捉全局鼠标钩子,比较麻烦的。
Popup有一个属性管自动关闭的:StaysOpen,把它设置为false,则当鼠标点击到其他位置的时候,Popup会自动关掉,但有一个缺点,就是鼠标点击的那个位置并不会获得焦点。

所以,你把你的DropdownList放在一个Popup里,就可以解决这个问题(我认为你应该是这么做的)。
puppywin 2010-04-11
  • 打赏
  • 举报
回复
老大们来帮帮忙啊
puppywin 2010-04-11
  • 打赏
  • 举报
回复
人工置顶 求解~~~
puppywin 2010-04-11
  • 打赏
  • 举报
回复
我想能不能把这个处理过程 放在这个控件内来解决 不想再整个界面里面都去搞这个事情 呵呵 再说也不不一定点在一个控件上

就是这个dropdown打开了 我在屏幕随便哪里点下(当然不在这个控件之上) 它就可以自动收起来 呵呵 UPUP~~~
xray2005 2010-04-11
  • 打赏
  • 举报
回复
在点击事件里面判断sender是否是DropDownList,如果不是就收起来,
比如:某个Button的点击事件里面判断:
private void button1_Click(object sender, EventArgs e)
{
DropDownList droplist=sender as DropDownList;
if(droplist==null)
{
//dropdown 收起来的
}
}

还是可以试试,在鼠标从DropDownList上面离开的时候MouseLeave事件,就收起来。
比如:
private void XXX_MouseLeave(object sender, EventArgs e)
{
//收起来
}

13,347

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET技术前瞻
社区管理员
  • .NET技术前瞻社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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