Version

InitAppearance Method (ButtonToolUIElement)

Initializes the appearance structure for this element.
Syntax
'Declaration
 
Protected Overrides Sub InitAppearance( _
   ByRef appearance As Infragistics.Win.AppearanceData, _
   ByRef requestedProps As Infragistics.Win.AppearancePropFlags _
) 
protected override void InitAppearance( 
   ref Infragistics.Win.AppearanceData appearance,
   ref Infragistics.Win.AppearancePropFlags requestedProps
)

Parameters

appearance
The appearance structure to initialize.
requestedProps
The properties that are needed.
Example
This sample initializes the appearance of a UIElement based on the mouse position within the element. It also exemplifies the use of mouse hover notifications.

Imports Infragistics.Win

 Private mouseEnteredElement As Boolean = False
 Private mouseHoveringOnElement As Boolean = False

 Protected Overrides Sub InitAppearance(ByRef appearance As AppearanceData, ByRef requestedProps As AppearancePropFlags)

     MyBase.InitAppearance(appearance, requestedProps)

     ' Set BackColor based on whether or not mouse is over
     ' the element.
     If (Me.mouseHoveringOnElement) Then
         appearance.BackColor = Color.Green
     ElseIf (Me.mouseEnteredElement) Then
         appearance.BackColor = Color.Red
     Else
         appearance.BackColor = Color.Transparent
     End If

 End Sub


 Protected Overrides Sub OnMouseEnter()

     Me.mouseEnteredElement = True

' Call when sub UIElements need to simply be repainted (color change etc).
If Not Me.IsDrawing then
      Me.Invalidate()
End If

 End Sub

 Protected Overrides Sub OnMouseHover()

     Me.mouseHoveringOnElement = True

' Call when sub UIElements need to be repositioned or sized.
     Me.DirtyChildElements()

 End Sub

 Protected Overrides Sub OnMouseLeave()

     Me.mouseHoveringOnElement = False
     Me.mouseEnteredElement = False

     If Not Me.IsDrawing then
      Me.Invalidate()
End If

 End Sub

 Protected Overrides ReadOnly Property WantsMouseHoverNotification() As Boolean

     Get
         Return True
     End Get

 End Property
using Infragistics.Win;

private bool mouseEnteredElement = false;
private bool mouseHoveringOnElement = false;

protected override void OnMouseHover()
{

	this.mouseHoveringOnElement = true;

	// Call when sub UIElements need to be repositioned or sized.
	this.DirtyChildElements();

}

protected override bool WantsMouseHoverNotification
{

	get
	{
		return true;
	}

}


protected override void OnMouseEnter()
{

	this.mouseEnteredElement = true;

	// Call when sub UIElements need to simply be repainted (color change etc).
	if (!this.IsDrawing)
		this.Invalidate();

}


protected override void OnMouseLeave()
{

	this.mouseHoveringOnElement = false;
	this.mouseEnteredElement = false;

	// Call when sub UIElements need to simply be repainted (color change etc).
	if (!this.IsDrawing)
		this.Invalidate();

}


protected override void InitAppearance(ref AppearanceData appearance, ref AppearancePropFlags requestedProps)
{

	base.InitAppearance(ref appearance, ref  requestedProps);

	// Set BackColor based on whether or not mouse is over
	// the element.
	if(this.mouseHoveringOnElement)
		appearance.BackColor = Color.Green;
	else if(this.mouseEnteredElement)
		appearance.BackColor = Color.Red;
	else
		appearance.BackColor = Color.Transparent ;

}
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also