IToggleProvider.Toggle Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Växlar genom växlingslägena för en kontroll.
public:
void Toggle();
public void Toggle();
abstract member Toggle : unit -> unit
Public Sub Toggle ()
Exempel
I följande exempel visas en möjlig implementering av den här metoden för en anpassad kontroll som kan växlas.
/// <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
Kommentarer
En kontroll måste växla mellan dess växlingslägen i den här ordningen: On, Offoch (om den stöds) Indeterminate.