C# - Properties überschreiben/deaktiviren

SeeSharpNewBee

Erfahrenes Mitglied
Hi,

gibt es eine Möglichkeit ein Propertie entweder zu überschreiben oder zu deaktiviren? Mein Problem ist, das ich eine Textbox habe, und nicht will, das die Größe von der Box verändert werden kann. Gibts da eine andere Möglichkeit? Danke!
 
Kannst du dich mal bissl genauer ausdrücken?
Meinst du eine eigene TextBox die von der "originalen" ableitet?
Oder redest du von einer ganz normalen System.Windows.Forms.TextBox();?
Wo soll die Größe nicht veränderbar sein?
Bei den Eigenschaften im Designer?
Oder während der Laufzeit?
 
Also, ich hab eine abgeleitete Textbox, also ein UserControl, und da soll im Designer die Größe nicht veränderbar sein, also weder per ziehen, noch über die Eigenschaft "Size". Gibts da irgend eine Möglichkeit? Danke!
 
In beiden Fällen müsste er von der TextBox ableiten.

Es gäbe da 2 Varianten
  • Also Du kannst die Propertys entweder mit private new quasi "verstecken".
    Somit währe das Property generell nicht mehr sichbar.
  • Oder Du entfernst sie mittels des ControlDesigners nur aus dem Designer.
C#:
public class TextBoxDesigner : ControlDesigner {
	protected override void PostFilterProperties( IDictionary properties ) {
		properties.Remove( "Size" );
	}
}
C#:
[System.ComponentModel.DesignerCategory( "Code" )]
[Designer( typeof(TextBoxDesigner ))]
public class MyTextBox : TextBox
 
Zurück