gpt4 book ai didi

c# - 如何公开 UserControl 的 Text 属性?

转载 作者:太空狗 更新时间:2023-10-29 20:08:23 24 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Text property in a UserControl in C#

如何将 UserControlText 属性标记为可浏览?


.NET UserControl类有一个 Text属性(property)。

不幸的是 UserControlText 属性不是 browsable :

//
//
// Returns:
// The text associated with this control.
[Bindable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override string Text { get; set; }

在我的 UserControl 中,我想要公开 Text 属性(即使其“可浏览”)属性窗口。我尝试盲目地声明它可浏览:

[Browsable(true)]
public override string Text { get; set; }

现在它出现在属性窗口中,只是现在什么都不做。

我试着盲目地调用 base.Text 来恢复功能:

[Browsable(true)]
public override string Text { get {return base.Text;} set { base.Text = value; this.Invalidate(); } }

现在属性在设计时起作用,但属性值不会持久保存到 Form.Designer.cs 中,它是 InitalizeComponent 代码。

公开 UserControl Text 属性的正确方法是什么,以便它:

  • 可在属性窗口中浏览
  • 功能正常
  • 持久化在表单设计器中

作为奖励:

  • 知道什么时候发生变化

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com