在WPF中实现拖放仪表板项目的最佳方法?

问题描述 投票:1回答:2

我正在尝试制作一个仪表板应用程序,并且正在尝试为其创建布局规则,但我不确定最好的解决方法。最初,我有一个自定义网格控件,因此我可以轻松地向其中添加自定义控件。从某种意义上说,它的工作原理是,如果您最初将东西放在那里,那很好。但是我想在其中实现拖放功能,这有点不喜欢。

最大的烦恼就是仅根据鼠标在网格中的行和列来检测鼠标的位置。因此,我以为可以使用Canvas代替网格,而只需手动测量网格槽。但是我不确定是否有更好的方法。我想模仿一下在android上的操作方式,您可以在主屏幕上安装小部件,然后将其拖放到屏幕上。我希望它本质上就是这样。

[拖动时,我希望移动一个绿色的矩形而不是东西,如果它与其他东西重叠,则使其变成红色。就像我说的,基本上就像android小部件的工作方式一样。由于我是WPF的新手,所以我会喜欢一些代码示例。如果您还有其他一般性建议,将不胜感激。

谢谢!

c# wpf drag-and-drop widget dashboard
2个回答
1
投票

blacklight上签出github及其较新版本

仪表板演示是您需要查看的。

您可能难以编译代码,但是只需删除silverlight项目,就可以运行WPF演示。


0
投票

我知道这是一个老问题。为任何偶然发现该问题以寻找WPF仪表板的其他人创建此答案。我找不到其他带有动态窗口小部件的仪表板,因此我创建了自己的仪表板,并与其他需要更好解决方案的人共享。听起来就像Gentatsu在最初的问题中正在寻找什么。

您可以在这里找到它:https://github.com/DustinBryant/WpfDashboardControl

© www.soinside.com 2019 - 2024. All rights reserved.