- WPF 教程
- WPF - 首頁
- WPF - 概述
- WPF - 環境設定
- WPF - Hello World
- WPF - XAML 概述
- WPF - 元素樹
- WPF - 依賴屬性
- WPF - 路由事件
- WPF - 控制元件
- WPF - 佈局
- WPF - 佈局巢狀
- WPF - 輸入
- WPF - 命令列
- WPF - 資料繫結
- WPF - 資源
- WPF - 模板
- WPF - 樣式
- WPF - 觸發器
- WPF - 除錯
- WPF - 自定義控制元件
- WPF - 異常處理
- WPF - 本地化
- WPF - 互動
- WPF - 2D 圖形
- WPF - 3D 圖形
- WPF - 多媒體
- WPF 有用資源
- WPF - 快速指南
- WPF - 有用資源
- WPF - 討論
WPF - 切換按鈕
切換按鈕是一種可以切換狀態的控制元件,例如複選框和單選按鈕。ToggleButton 類的層次繼承如下:
ToggleButton 類中常用的屬性
| 序號 | 屬性及說明 |
|---|---|
| 1 | IsChecked 獲取或設定 ToggleButton 是否被選中。 |
| 2 | IsCheckedProperty 標識 IsChecked 依賴屬性。 |
| 3 | IsThreeState 獲取或設定一個值,該值指示控制元件是否支援三種狀態。 |
| 4 | IsThreeStateProperty 標識 IsThreeState 依賴屬性。 |
ToggleButton 類中常用的事件
| 序號 | 事件及說明 |
|---|---|
| 1 | Checked 當 ToggleButton 被選中時觸發。 |
| 2 | Indeterminate 當 ToggleButton 的狀態切換到不確定狀態時觸發。 |
| 3 | Unchecked 當 ToggleButton 未選中時發生。 |
示例
- 讓我們建立一個新的 WPF 專案,名為 WPFToggleButtonControl。
- 從工具箱中拖動一個文字塊和一個切換按鈕。
- 從屬性視窗更改文字塊的背景顏色。
- 以下示例顯示了在 XAML 應用程式中使用 ToggleButton 的方法。
- 以下 XAML 程式碼建立了一個 ToggleButton 並使用一些屬性對其進行初始化。
<Window x:Class = "WPFToggleButtonControl.MainWindow"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d = "http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local = "clr-namespace:WPFToggleButtonControl"
mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604">
<StackPanel>
<ToggleButton x:Name = "tb" Content = "Toggle"
Checked = "HandleCheck" Unchecked = "HandleUnchecked"Margin = "20"
Width = "108"HorizontalAlignment = "Center" />
<TextBlock x:Name = "text2" Margin = "20" Width = "300"
HorizontalAlignment = "Center" FontSize = "24" Background = "#FFFDE0E0" />
</StackPanel>
</Window>
以下是 Checked 和 Unchecked 事件的 C# 實現。
using System.Windows;
namespace WPFToggleButtonControl {
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
}
private void HandleCheck(object sender, RoutedEventArgs e) {
text2.Text = "Button is Checked";
}
private void HandleUnchecked(object sender, RoutedEventArgs e) {
text2.Text = "Button is unchecked.";
}
}
}
編譯並執行上述程式碼後,將生成以下視窗。單擊按鈕時,它將更改顏色並更新文字塊。
我們建議您執行上述示例程式碼,並嘗試 ToggleButton 的其他屬性和事件。
wpf_controls.htm
廣告