IToggleProvider.Toggle Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee worden de wisselstatussen van een besturingselement doorlopen.
public:
void Toggle();
public void Toggle();
abstract member Toggle : unit -> unit
Public Sub Toggle ()
Voorbeelden
In het volgende voorbeeld ziet u een mogelijke implementatie van deze methode voor een aangepast besturingselement dat kan worden ingeschakeld.
/// <summary>
/// Toggles the control.
/// </summary>
/// <remarks>
/// For this custom control the toggle state is reflected by the color
/// of the control. This is analogous to the CheckBox IsChecked property.
/// Green - ToggleState.On
/// Red - ToggleState.Off
/// Yellow - ToggleState.Indeterminate
/// </remarks>
void IToggleProvider.Toggle()
{
ToggleState toggleState =
customControl.toggleStateColor[customControl.controlColor];
// Invoke control method on separate thread to avoid clashing with UI.
// Use anonymous method for simplicity.
this.customControl.Invoke(new MethodInvoker(delegate ()
{
if (toggleState == ToggleState.On)
{
customControl.controlColor = Color.Red;
}
else if (toggleState == ToggleState.Off)
{
customControl.controlColor = Color.Yellow;
}
else if (toggleState == ToggleState.Indeterminate)
{
customControl.controlColor = Color.Green;
}
customControl.Refresh();
}));
}
''' <summary>
''' Toggles the control.
''' </summary>
''' <remarks>
''' For this custom control the toggle state is reflected by the color
''' of the control. This is analogous to the CheckBox IsChecked property.
''' Green - ToggleState.On
''' Red - ToggleState.Off
''' Yellow - ToggleState.Indeterminate
''' </remarks>
Private Sub Toggle() Implements IToggleProvider.Toggle
Dim toggleState As ToggleState = customControl.toggleStateColor(customControl.controlColor)
' Invoke control method on separate thread to avoid clashing with UI.
' Use anonymous method for simplicity.
Me.customControl.Invoke(New MethodInvoker(Sub()
If toggleState = Windows.Automation.ToggleState.On Then
customControl.controlColor = Color.Red
ElseIf toggleState = Windows.Automation.ToggleState.Off Then
customControl.controlColor = Color.Yellow
ElseIf toggleState = Windows.Automation.ToggleState.Indeterminate Then
customControl.controlColor = Color.Green
End If
customControl.Refresh()
End Sub))
End Sub
Opmerkingen
Een besturingselement moet in deze volgorde de wisselknopstatussen doorlopen: On, Offen (indien ondersteund). Indeterminate