在滚动查看器上移动控制
本文关键字:移动 控制 滚动 | 更新日期: 2023-09-27 18:19:12
我正在开发一个小的WPF应用程序,它使用ScrollViewer
在Window
中显示Image
。我已经以编程方式生成了窗口和他所有的相关代码(如果需要,我会显示它,但我认为对这个问题的要点没有用处)。
问题/如何做如下。我必须在ScrollViewer
中包含的图像上显示/隐藏(按下按钮)控件(基本上是InkCanvas
)。除了部分哦,显示/隐藏是相当简单的使用按钮事件),这是最好的方式来添加控件(和哪种类型的控件/容器)在窗口迫使他在ScrollViewer,然后能够移动周围拖动它?
我对WPF比较陌生,我使用了很多WinForms(我可以在WinForms中做到这一点,但WPF对我来说是一个新世界)。
提前感谢!
对于容器,您应该使用Grid
,它将在同一单元格中居中并将控件置于彼此的顶部。
至于拖放,如果你想自己实现它,我在这里提供了一个最小的实现:https://stackoverflow.com/a/17014906/145757
否则您可以使用Blend提供的MouseDragElementBehavior
行为。
下面是一个从Blend本身演示其用法的教程:http://www.c-sharpcorner.com/uploadfile/nipuntomar/expression-blend-4-behaviors/
但是你可以不使用Blend,通过导入Blend库并在XAML中使用它,例如:
<InkCanvas ...>
<interactivity:Interaction.Behaviors>
<blendbehaviors:MouseDragElementBehavior />
</interactivity:Interaction.Behaviors>
</InkCanvas>
,其中interactivity
和blendbehaviors
被映射到Blend名称空间。