有些时候发现有些问题的解决方法是很简单的,只是在想问题时习惯了把它想得太过于复杂。这个小问题也困扰了自己一个多小时,然后,通过查询下资料,解决了这个问题。
问题:在用Sliverlight开发一个类WebOS性质的小项目,然后在桌面(一个Grid布局)中需要用鼠标进行拖拽实现多个桌面的切换,也就是说需要监听mouseleftbuttondown,mousemove,mouseleftbuttonup这个事件,并计算进行响应操作。
问题就出在,那个桌面是一个Grid容器,里面又放置StackPanel窗口,StackPanel容器里放置图片按钮,当我直接给那个外层的Grid设置一个MouseLeftButtonDown = "方法"时,点外面没有图标的地方时却响应不了事件;
解决方法:然后,问题的解决方法其实很简单的,只要把外层那个Grid的background设置一个值就可以的,例如可以设置一个Transparent,这个既不影响其他操作,也可以很方便的捕获事件。Problem Solved.
小DEMO: