7 Stimmen

Wie macht man die Eigenschaft Text eines UserControls sichtbar?

Mögliches Duplikat:
Text-Eigenschaft in einem UserControl in C#

Wie markiere ich die Text Eigenschaft einer UserControl als durchsuchbar?


EIN .NET UserControl Klasse hat eine Text Eigentum.

Leider ist die Text Eigenschaft einer UserControl ist nicht durchsuchbar :

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

In meinem UserControl I wollen zur Offenlegung der Text Eigenschaft (d.h. sie zu " durchsuchbar ") im Eigenschaftsfenster. Ich habe versucht, sie blind als durchsuchbar zu deklarieren:

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

und jetzt erscheint es im Eigenschaftsfenster, nur dass es jetzt nichts tut.

Ich habe versucht, blindlings anzurufen base.Text um die Funktionalität wiederherzustellen:

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

und jetzt funktioniert die Eigenschaft zwar zur Entwurfszeit, aber der Eigenschaftswert wird nicht in der Form.Designer.cs und es ist InitalizeComponent Code.

Was ist die richtig Möglichkeit, die UserControl Text Eigenschaft, so dass sie:

  • ist im Eigenschaftsfenster durchsuchbar
  • ist funktionell
  • wird im Formular-Designer festgehalten

und, als Bonus :

  • wissen, wann es sich ändert

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X