代码之家  ›  专栏  ›  技术社区  ›  Thunder

带文本框的用户控件

  •  0
  • Thunder  · 技术社区  · 15 年前

    我有一个用户控件,在Win窗体应用程序中有一个文本框。 我想使用Visual Studio的“属性”窗口更改该文本框的属性。 我在同一个项目的不同形式中使用该控件,是否可能? 我已将文本框的Modifier属性设置为public,并在用户控件中设置了以下属性:

      public TextBox mytextBox
            {
                get { return textBox1; }
                set { textBox1 = value; }
            }
    

    事先谢谢。

    2 回复  |  直到 15 年前
        1
  •  1
  •   Swanny    15 年前

    这样做的目的是什么?您是否试图让“一个文本框控件由多个表单共享”(这并不实际)。但是,您可以按照这样的方式设置表单,以便对所有表单进行更新以响应单个更改。

        2
  •  0
  •   Ani    15 年前
    [TypeConverter(typeof(ExpandableObjectConverter))]
    public TextBox mytextBox
    {
        get { return textBox1; }
        set { textBox1 = value; }
    }
    

    笔记:

    1. PropertyGrid 在这种情况下,setter没有任何好处;已经分配的属性 TextBox 正在就地修改。
    2. 记住创建初始值,并添加 文本框 UserControl 的控件集合。如果使用vs设计器创建 文本框 ,这应该已经完成了。如果您发现vs designer方法 InitializeComponents() 正在撤消更改,请自己创建和添加控件。
    3. 您可能需要重新生成项目和/或重新打开窗体设计器才能看到更改。
    4. 主题外:对属性使用pascal case,并自动实现 get;set; 可读性模式,如果可能的话。
    推荐文章