我希望使用WPF应用程序(在某个区域/定义区域中)实现以下目标:
我需要做些什么,我假设有一堆onclick / onmove。有没有更简单的方法,比如使用帆布?任何见解都会很棒。
答案 0 :(得分:3)
如果您希望方块显示在用户点击和拖动的位置,则必须使用画布。
鼠标按下事件将定义一个角落,鼠标向上定义第二个角落。您必须约束光标的移动,以使矩形的x和y尺寸相同。
在每次鼠标移动事件中,你必须检查光标是否超过现有的一个方块,并防止方块进一步增长。
对于拖动现有方块,修改鼠标按下事件以检查光标下的内容。如果它是画布开始方形绘制模式,如果它是一个矩形(正方形),则开始拖动模式。同样,您需要使用鼠标移动事件来检查方块是否与任何现有方块相交。
答案 1 :(得分:1)
有一篇代码项目文章描述了如何在Canvas中拖动元素:Dragging Elements in a Canvas
说到ChrisF提到使用Canvas,我建议你使用DragCanvas(在文章中找到)