【问题标题】:Linking UI objects together : could I do it with attributes?将 UI 对象链接在一起:我可以用属性来做吗?
【发布时间】:2011-06-04 14:34:01
【问题描述】:

我目前正在开发一款游戏的自定义 UI 引擎。我有非常基本的 C# 技能(我是一名 C 程序员),但在弄清楚如何将 UI 元素与其所代表的数据链接时遇到了问题。这就是我的意思:

class SomeClass
{
    //some stuff

    //This is what I want to monitor and/or modify.
    private SomeType _myVariable;
}

其他地方...

class UITextboxWidget
{
     //methods and stuff
}

现在,我想要的是当用户在文本框中输入值时修改 _myVariable 元素,反之亦然。

我首先尝试通过调用 MyClass 构造函数中的方法并通过引用传递 _myVariable 上的属性来实现,但我很快发现这在 C# 中是不可能的。

然后我查看了属性,发现您可以创建新属性:这就是我的想法。

class MyClass
{
    [TextBoxAttribute(some, parameters)]
    private SomeType _myVariable;
}

这将使嵌入到 UI 系统中变得非常容易,但我不太确定是否可以以这种方式使用属性。

所以,简单地说:

  1. 我可以使用属性执行此操作吗?如果可以,如何操作?
  2. 如果没有,有什么好的方法可以做到这一点?

【问题讨论】:

  • 我不知道你问的是桌面应用还是网络应用。
  • 好问题,它是桌面的。
  • k,我给你加了一个标签。它有助于提高您的问题对您想要联系的人的可见度。
  • @DOK:我还打了 [数据绑定] 来抓住那些人。
  • @sixlettervariables,好主意。现在有近 200 万个问题,我认为标记是至关重要的,但一些经验不足的人(无意冒犯,SolarBear)并没有意识到这个问题。

标签: c# winforms data-binding


【解决方案1】:

您想要做的就是所谓的“数据绑定”。特别是在您的情况下,它是Object Data Binding。点击这个链接,它会让你开始。

【讨论】:

    猜你喜欢
    • 2011-10-22
    • 1970-01-01
    • 2022-11-25
    • 2019-04-05
    • 1970-01-01
    • 2010-11-16
    • 2014-02-12
    • 2011-12-03
    相关资源
    最近更新 更多