c# - 向 Microsoft WinForm 控件添加元素

标签 c# winforms controls

你能告诉我是否可以向 Microsoft WinForms 控件添加元素吗?

例如:假设您有一个包含多个用户的应用程序,每个用户都有自己的“权限”,这些权限仅由字符串“1”、“2”、“3”等表示。您还有应用程序上的几个按钮,应根据当前用户的权限级别启用/禁用。

是否可以向“按钮”控件添加一个“字符串”,它可以指示此按钮代表的权限级别。

之所以有用,是因为如果当前用户的权限级别不够高,我可以遍历所有按钮并禁用它们。

我希望这是有道理的。

谢谢。

最佳答案

WinForms 控件上有一个Tag 属性,您可以使用它来存储对相关信息的引用。它是 object 类型,所以它可以存储任何东西。 (msdn reference)

myButton.Tag = "1";

如果你想存储不止一个东西,那么为它创建一个类:

class UserTag
{
    public string Permission {get;set;}
    public string Name {get;set;}
}

....
myButton.Tag = new UserTag { Permission="1", Name="Alice" };
....
// Use like this:  ((UserTag)myButton.Tag).Permission

关于c# - 向 Microsoft WinForm 控件添加元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4391685/

相关文章:

c# - C# 中的 FontFamily 问题

c# - 打开 XML 段落间距

c# - 评估数学表达式的最佳和最短方法

c# - Visual Studio Windows 窗体 "Value does not fall within the expected range."

c++ - Internet Explorer 控件不会加载 CSS 和 JS

delphi - 自定义 TControl 在剪切和粘贴之前不会在设计时绘制

c# - 如何向生成的 Asp.Net Core MVC Identity 数据库添加表和关系?

c# - datagridview 添加行

.net - 如何在多项目、单一解决方案环境(VS2012)中调用Forms?

c# - ControlPaint.DrawBorder().....但是更厚?