【发布时间】:2011-01-23 23:05:07
【问题描述】:
我正在考虑在我的应用程序中管理“工作区”的更好方法,用户可以在该空间中移动东西,例如可以平移。
假设我有我的应用程序界面,周围有一些按钮、一个树视图等,中间是一个带有一些小部件的 Canvas,用户可以移动和使用,他可以平移这个空间以在其中移动。
对于平底锅,我想在这个空间中处理 MouseLeftButtonDown(将布尔值“UserMoving”切换为 true),并在 MouseMove 上应用到空间的平移(来自两个事件之间的 Delta) ,直到我检测到一个 MouseLeftButtonUp,才能知道他已经停止(UserMoving 为 false)。问题是,如果用户“鼠标左键向上”不在空间本身(画布)上,我永远不会知道他已经释放了鼠标。他可以在应用程序的任何位置释放平移(或小部件的拖放)这一事实,最好的管理方法是什么?
有人已经管理过类似的事情并且可以帮助我吗?
【问题讨论】:
标签: silverlight drag-and-drop pan