Rendere una proprietà visibile nella scheda Properties



Quando creiamo un controllo, cioè un oggetto che estende la classe Control, possiamo aggiungere delle proprietà a questo oggetto e fare in modo che queste siano modificabili nella scheda Properties di Visual Studio.

Prendiamo come esempio una classe che estende Label (che a sua volta estende Control):


using System.Windows.Forms;

class NewLabel : Label
{
}

Ora aggiungiamo una Proprietà, ad esempio SecondText, che dovrà sostituire Text al click sulla NewLabel:



private string _secondText;

public string SecondText
{
get
{
return _secondText;
}
set
{
_secondText = value;
}
}

Per rendere ora la Proprietà visibile nella scheda Properties del Visual Studio, dobbiamo aggiungere un Attributo alla proprietà stessa, esattamente il BrowsableAttribute del namespace System.ComponentModel:


[System.ComponentModel.Browsable(true)];
public string SecondText
{

}

Browsable accetta come parametro True o False, che indicano se rendere visibile o no la proprietà tra le Properties.

Ora aggiungendo il controllo NewLabel su un Windows Form possiamo modificare direttamente il valore di SecondText.

Se si vuole completare la NewLabel per fargli cambiare il testo al click basta fare l’override della funzione OnClick ed assegnare SecondText a Text:


protected override void OnClick(EventArgs e)
{
Text = SecondText;
}

Annunci sponsorizzati:
Condividi su Facebook Condividi su Twitter!
Pinterest