- 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 - 視窗
視窗是 XAML 應用程式的根視窗,它提供最小化/最大化選項、標題欄、邊框和關閉按鈕。它還提供建立、配置、顯示和管理視窗和對話方塊生命週期能力。Window 類的層次繼承如下:
Window 類常用屬性
| 序號 | 屬性及描述 |
|---|---|
| 1 | AllowsTransparency 獲取或設定一個值,該值指示視窗的客戶區是否支援透明。 |
| 2 | DialogResult 獲取或設定對話方塊結果值,該值是 ShowDialog 方法返回的值。 |
| 3 | Icon 獲取或設定視窗的圖示。 |
| 4 | IsActive 獲取一個值,該值指示視窗是否處於活動狀態。 |
| 5 | Left 獲取或設定視窗左邊緣相對於桌面的位置。 |
| 6 | OwnedWindows 獲取此視窗擁有的視窗集合。 |
| 7 | Owner 獲取或設定擁有此視窗的視窗。 |
| 8 | ResizeMode 獲取或設定調整大小模式。 |
| 9 | RestoreBounds 獲取視窗在最小化或最大化之前的大小和位置。 |
| 10 | ShowActivated 獲取或設定一個值,該值指示視窗在首次顯示時是否處於活動狀態。 |
| 11 | ShowInTaskbar 獲取或設定一個值,該值指示視窗是否具有工作列按鈕。 |
| 12 | SizeToContent 獲取或設定一個值,該值指示視窗是否會自動調整自身大小以適應其內容的大小。 |
| 13 | TaskbarItemInfo 獲取或設定視窗的 Windows 7 工作列縮圖。 |
| 14 | Title 獲取或設定視窗的標題。 |
| 15 | Top 獲取或設定視窗頂邊緣相對於桌面的位置。 |
| 16 | Topmost 獲取或設定一個值,該值指示視窗是否顯示在最頂層的 z 順序中。 |
| 17 | WindowStartupLocation 獲取或設定視窗首次顯示時的位置。 |
| 18 | WindowState 獲取或設定一個值,該值指示視窗是恢復、最小化還是最大化。 |
| 19 | WindowStyle 獲取或設定視窗的邊框樣式。 |
Window 類常用事件
| 序號 | 事件及描述 |
|---|---|
| 1 | Activated 當視窗成為前臺視窗時發生。 |
| 2 | Closed 當視窗即將關閉時發生。 |
| 3 | Closing 在呼叫 Close 後立即發生,可以處理以取消視窗關閉。 |
| 4 | ContentRendered 視窗內容呈現後發生。 |
| 5 | Deactivated 當視窗成為後臺視窗時發生。 |
| 6 | LocationChanged 當視窗的位置發生變化時發生。 |
| 7 | SourceInitialized 引發此事件以支援與 Win32 的互操作。請參閱 HwndSource。 |
| 8 | StateChanged 當視窗的 WindowState 屬性發生變化時發生。 |
Window 類常用方法
| 序號 | 方法及描述 |
|---|---|
| 1 | Activate 嘗試將視窗置於前臺並將其啟用。 |
| 2 | Close 手動關閉視窗。 |
| 3 | DragMove 允許透過滑鼠左鍵按下視窗客戶區可見區域來拖動視窗。 |
| 4 | GetWindow 返回對承載依賴項物件所在內容樹的 Window 物件的引用。 |
| 5 | Hide 使視窗不可見。 |
| 6 | Show 開啟一個視窗並返回,而不等待新開啟的視窗關閉。 |
| 7 | ShowDialog 開啟一個視窗,並且只有在新開啟的視窗關閉時才返回。 |
示例
當您建立一個新的 WPF 專案時,預設情況下,Window 控制元件是存在的。讓我們看看下面的例子。
以下 XAML 程式碼以 <Window> 標記開始,以 </Window> 標記結束。程式碼設定了視窗的一些屬性,並建立了一些其他控制元件,例如文字塊、按鈕等。
<Window x:Class = "WPFToolTipControl.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:WPFToolTipControl"
mc:Ignorable = "d" Title = "MainWindow" Height = "350" Width = "604">
<Grid>
<TextBlock x:Name = "textBlock" HorizontalAlignment = "Left"
Margin = "101,75,0,0" TextWrapping = "Wrap"
Text = "User Name" VerticalAlignment = "Top" />
<TextBlock x:Name = "textBlock1" HorizontalAlignment = "Left"
Margin = "101,125,0,0" TextWrapping = "Wrap"
Text = "Password" VerticalAlignment = "Top" />
<TextBox x:Name = "textBox" HorizontalAlignment = "Left"
Height = "24" Margin = "199,75,0,0" TextWrapping = "Wrap"
VerticalAlignment = "Top" Width = "219"
ToolTipService.ToolTip = "Enter User Name" />
<PasswordBox x:Name = "passwordBox" HorizontalAlignment = "Left"
Margin = "199,125,0,0" VerticalAlignment = "Top" Width = "219"
Height = "24" ToolTipService.ToolTip = "Enter Password" />
<Button x:Name = "button" Content = "Log in" HorizontalAlignment = "Left"
Margin = "199,189,0,0" VerticalAlignment = "Top" Width = "75"
ToolTipService.ToolTip = "Log in" />
</Grid>
</Window>
編譯並執行上述程式碼後,將顯示以下輸出。當滑鼠進入 Button 或 Textboxes 區域時,將顯示工具提示。
我們建議您執行上述示例程式碼,並嘗試此類的其他一些屬性和事件。