【问题标题】:C# Winforms control for mapping between two List<string>C# Winforms 控件用于两个 List<string> 之间的映射
【发布时间】:2017-05-22 13:44:47
【问题描述】:

我一直在 Google 上搜索 WinForms C# 兼容控件,它允许我将两个 List&lt;string&gt; 链接在一起。

我在使用 Excel 之后创建了一个模型。

这个想法是允许使用我的程序的人使用单击、拖放方法将两个List&lt;string&gt; 链接在一起。

我希望使用控件的人能够单击并按住从一个黑点到另一个黑点以形成链接(显示为一条线)。如果在建立链接之前释放鼠标按钮,则不应建立链接。

要删除链接,将光标悬停在一行上应突出显示它(只应突出显示一个)。当一行突出显示时单击应该删除链接。

有人知道这个非常具体的问题的解决方案吗?

【问题讨论】:

  • 看来你得自己动手了。
  • 因此您希望用户能够单击List A 中的项目,然后单击List B 中该项目所属的类别,并且您希望控件在两者之间画一条线?您肯定必须制作自己的自定义控件,但在第一次和第二次单击时捕获鼠标位置然后draw a line 应该不会太难
  • @sab669 非常接近。我希望使用该控件的人能够单击并按住从一个黑点到另一个黑点以形成链接(显示为一条线)。如果在建立链接之前释放鼠标按钮,则不应建立链接。将鼠标悬停在一行上应突出显示一行,当一行突出显示时单击应删除链接。
  • @Knickerless-Noggins 或多或少是一样的。按住鼠标,验证坐标,画一个点。抬起鼠标,再次验证坐标,绘制第二个点。然后在两个坐标之间画一条线。然后在某处存储对这 3 个的引用,以便在用户“取消链接”一对时删除它们。
  • 看起来是多对多的关系。您可以在DataSet 中设置这样的关系。

标签: c# windows winforms


【解决方案1】:

我不知道有这样的主流控件。在 .NET 或我目前见过的任何程序中。

您可以使用两个表之间的 m-n 关系使用各种数据网格控件复制类似的内容。

除此之外,我会说这看起来像自定义控件的教科书定义......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-27
    • 2017-05-21
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多