Creare un web custom control - Parte 4
Le proprietà di default e custom
Come ogni controllo, anche il nostro avrà una serie di proprietà, alcune ereditate dalla classe WebControl da cui è derivato, alcune create appositamente. Le proprietà entreranno in gioco in fase di rendering del controllo caratterizzando il codice HTML.
Le proprietà ereditate che gestiremo sono:
ID
Visible
Width
BorderStyle
BorderWidth
BackColor
BorderColor
mentre le nuove proprietà introdotte sono:
Opacity (int)
CssClassMenuOver (string)
CssClassMenu (string)
CssClassToolTip (string)
Selected (int)
Top (Unit)
Left (Unit)
ZIndex (int)
MenuItems (array di elementi di tipo MenuItem)
con MenuItem definito in questo modo:
{
public string Title;
public string ToolTip;
public bool Hidden;
public string Style;
}
e definisce le caratteristiche di una singola voce di menu.
Quindi al codice della classe è necessario aggiungere le seguenti righe di codice:
private int _opacity = 20;
public int Opacity
{
set
{
_opacity = value;
if (_opacity < 0)
_opacity = 0;
if (_opacity > 100)
_opacity = 100;
}
get
{
return _opacity;
}
}
private MenuItem[] _menuitems;
public MenuItem[] MenuItems
{
set
{
_menuitems = value;
}
get
{
return (_menuitems);
}
}
private string _cssclassmenuover;
public string CssClassMenuOver
{
set
{
_cssclassmenuover = value;
}
get
{
return _cssclassmenuover;
}
}
private string _cssclassmenu;
public string CssClassMenu
{
set
{
_cssclassmenu = value;
}
get
{
return _cssclassmenu;
}
}
private string _cssclasstooltip;
public string CssClassToolTip
{
set
{
_cssclasstooltip = value;
}
get
{
return _cssclasstooltip;
}
}
private int _selected;
public int Selected
{
set
{
_selected = value;
}
get
{
return _selected;
}
}
private Unit _top = 0;
public Unit Top
{
set
{
_top = value;
}
get
{
return _top;
}
}
private Unit _left = 0;
public Unit Left
{
set
{
_left = value;
}
get
{
return _left;
}
}
private int _zindex = 0;
public int ZIndex
{
set
{
_zindex = value;
}
get
{
return _zindex;
}
}
#endregion
Nota: siccome abbiamo definito delle proprietà e delle variabili di tipo Unit è necessario includere anche il namespace System.Web.UI.WebControls aggiungendo in testa del file della classe la seguente riga di codice:
Nessun commento:
Posta un commento