- XAML 教程
- XAML - 首頁
- XAML - 概述
- XAML - 環境設定
- 在 macOS 上編寫 XAML 應用程式
- XAML 與 C# 程式碼
- XAML 與 VB.NET
- XAML - 構建塊
- XAML - 控制元件
- XAML - 佈局
- XAML - 事件處理
- XAML - 資料繫結
- XAML - 標記擴充套件
- XAML - 依賴屬性
- XAML - 資源
- XAML - 模板
- XAML - 樣式
- XAML - 觸發器
- XAML - 除錯
- XAML - 自定義控制元件
- XAML 有用資源
- XAML - 快速指南
- XAML - 有用資源
- XAML - 討論
XAML - 視窗
它是 XAML 應用程式的根視窗,提供最小化/最大化選項、標題欄、邊框和關閉按鈕。它還提供建立、配置、顯示和管理視窗和對話方塊生命週期的方法。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 獲取或設定視窗的邊框樣式。 |
事件
| 序號 | 事件及描述 |
|---|---|
| 1 | Activated 當視窗成為前臺視窗時發生。 |
| 2 | Closed 當視窗即將關閉時發生。 |
| 3 | Closing 在呼叫 Close 後直接發生,可以處理以取消視窗關閉。 |
| 4 | ContentRendered 視窗內容呈現後發生。 |
| 5 | Deactivated 當視窗成為後臺視窗時發生。 |
| 6 | LocationChanged 視窗位置改變時發生。 |
| 7 | SourceInitialized 引發此事件以支援與 Win32 的互操作。請參閱 HwndSource。 |
| 8 | StateChanged 視窗的 WindowState 屬性更改時發生。 |
方法
| 序號 | 方法及描述 |
|---|---|
| 1 | Activate 嘗試將視窗置於前臺並將其啟用。 |
| 2 | Close 手動關閉視窗。 |
| 3 | DragMove 允許使用滑鼠左鍵單擊視窗客戶區可見區域來拖動視窗。 |
| 4 | GetWindow 返回對託管依賴項物件所在內容樹的 Window 物件的引用。 |
| 5 | Hide 使視窗不可見。 |
| 6 | Show 開啟視窗並返回,無需等待新開啟的視窗關閉。 |
| 7 | ShowDialog 開啟視窗,只有在新開啟的視窗關閉後才返回。 |
示例
建立新的 WPF 專案時,預設情況下會提供 Window 控制元件。讓我們看一下下面的 XAML 程式碼,它從 Window 標記開始,以 </Window> 標記結束。我們還為視窗定義了一些屬性。
<Window x:Class = "XAMLToolTip.MainWindow"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
Title = "MainWindow" Height = "350" Width = "604">
<Grid>
<StackPanel Orientation = "Vertical">
<Button Content = "Button with a simple ToolTip."
ToolTipService.ToolTip = "Simple ToolTip"
Width = "200" Margin = "50" />
<!-- A TextBlock with an offset ToolTip. -->
<TextBlock Text = "TextBlock with an offset ToolTip." Width = "200" Margin = "50">
<ToolTipService.ToolTip>
<ToolTip Content = "Offset ToolTip." HorizontalOffset = "20" VerticalOffset = "30"/>
</ToolTipService.ToolTip>
</TextBlock>
</StackPanel>
</Grid>
</Window>
當您編譯並執行上述程式碼並將滑鼠移入視窗時,它將產生以下輸出:
我們建議您執行上述示例程式碼,並嘗試一些其他屬性和事件。