我有一个UserControl形式:
<UserControl>
<Grid>
<!-- Content Here-->
<StackPanel> <!-- I want this element to be draggable within the usercontrol. -->
<Label Name = "Header" />
<Button />
<Button />
<Button />
</StackPanel>
<Grid>
</UserControl>
Run Code Online (Sandbox Code Playgroud)
我的最终结果是有一个控件可以拖动按钮(用户控件的一部分)..?也就是说,在UserControl中可移动....
我读过关于Thumb但我不确定如何使用它...任何想法或例子都会很棒.谢谢!
Rac*_*hel 10
一个非常简单的方法是使用鼠标事件
首先,将其包裹起来StackPanel,Canvas以便根据用户拖动它的位置轻松定位
接下来,添加MouseDown和MouseUp事件StackPanel.您可能需要为其提供StackPanel背景颜色以接收鼠标事件.
在这种情况MouseDown下,将MouseMove事件处理程序附加到StackPanel并让面板捕获鼠标,以便所有鼠标事件都由处理StackPanel.
在这种情况MouseUp下,分离MouseMove事件并释放鼠标捕获.
在这种情况MouseMove下,根据当前鼠标位置更改面板的Canvas.Top和Canvas.Left属性.你需要在这里检查以确定鼠标是否在外面,UserControl所以StackPanel无法将其拖出屏幕.
就是这样,非常基本的拖拽:)
| 归档时间: |
|
| 查看次数: |
9608 次 |
| 最近记录: |