【问题标题】:2D Dynamic HW Position on Image WPF View图像 WPF 视图上的 2D 动态硬件位置
【发布时间】:2020-01-26 05:51:30
【问题描述】:

我正在开发一个 .Net WPF 应用程序,该应用程序在办公场所内显示固定网络网关(交换机、路由器)。
我正在查看以 2D 视图表示办公室工厂,并在其上动态/自动放置代表这些网络设备的项目,以概述它们的位置。

我曾考虑将坐标 XY(像素)与硬件详细信息一起存储,因此最终用户只需调整这些坐标即可将设备移动到图像上的新位置。 1. 这行得通吗? 2. 这是一个非常初级的解决方案吗?如果窗口大小发生变化,它会适应吗? 3. 谁能推荐一个 Nuget 包? 4. 谁能给我推荐一个算法?

感谢您的帮助。 问候

【问题讨论】:

    标签: c# .net wpf image 2d


    【解决方案1】:

    codeplex 有一个不错的 DragCanvas 演示。这显示了很多你想做的事情。

    您可以调整窗口大小并处理事件以调整画布上所有控件的大小,但听起来如果此解决方案仅在您的公司内部使用,我会避免额外的代码,只允许合理的固定窗口大小,以便您可以存储每个网络图像的偏移量并在程序重新加载时恢复它们(但是是的,你可以这样做)。

    1. 是的,这会起作用
    2. 您不需要复杂的解决方案?
    3. 不需要任何软件包。
    4. 算法并不真正需要。 (谷歌“调整画布控件大小”)

    弄清楚你想如何保存/加载文件或数据库中的位置,你就完成了。

    【讨论】:

    • 我可能从一开始就不是 google 正确的事情,而是从那里开始。你所描述的正是我的想法。但是,我确实想让背景图像尽可能动态,因为背景图像会随着时间的推移而改变,并且可能不会维护它,我的多个办公室拥有自己的办公室,并随着设备和空间的增长而轻松管理。
    • 如果每个办公室都没有链接在一起,那么替换你的 background.png 文件对于非技术人员来说应该很容易。如果您想允许更改应用程序中的图像,那么只需添加一个替换背景图像的文件上传器是另一种选择,或者如果您想存储和更新所有内容,那么我只需使用存储办公室 ID 的 json 配置文件和资产头寸,多种选择。
    猜你喜欢
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2019-06-02
    • 1970-01-01
    • 2011-10-28
    • 1970-01-01
    • 1970-01-01
    • 2011-08-10
    相关资源
    最近更新 更多