0
三態ToggleButton的開箱序列似乎爲On,Indeterminate,Off。在三態ToggleButton上更改狀態序列
我想將其更改爲On,Off,Indeterminate;類似於提出的問題here。
我試着修改我的StateChanging事件,但我認爲這將導致無限循環。
三態ToggleButton的開箱序列似乎爲On,Indeterminate,Off。在三態ToggleButton上更改狀態序列
我想將其更改爲On,Off,Indeterminate;類似於提出的問題here。
我試着修改我的StateChanging事件,但我認爲這將導致無限循環。
我簡單地實現了一個使用ToggleStateChanging的工作解決方案來改變狀態的順序,然後使用全局變量來避免無限循環。然而,然後我有一個新的問題,ToggleButton有一些自動主題,每個狀態和MouseHover都有不同的陰影。我不想要那個主題,所以我最終只是將按鈕更改爲標準按鈕,現在我使用按鈕的Tag屬性來模擬ToggleState。
我特別的解決方案使用Telerik RadButton,但是這對於WinForm中的標準按鈕也適用。
private void myButton_Click(object sender, EventArgs e)
{
RadButton myButton = (RadButton)sender;
switch (myButton.Tag.ToString())
{
case "Indeterminant":
myButton.Tag = "On";
break;
case "On":
myButton.Tag = "Off";
break;
case "Off":
myButton.Tag = "Indeterminant";
break;
default:
break;
}
}