WPF - Window 窗口控件

Window窗口是XAML应用程序的根窗口,它提供最小化/最大化选项、标题栏、边框和关闭按钮。 它还提供了创建、配置、显示和管理窗口和对话框的生命周期的能力。 Window类的层次继承如下 −

窗口层次结构

窗口类常用属性

Sr. No. 属性和描述
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 窗口类常用事件

Sr. No. 事件和描述
1

Activated

当窗口成为前台窗口时发生。

2

Closed

当窗口即将关闭时发生。

3

Closing

调用 Close 后直接发生,可以处理以取消窗口关闭。

4

ContentRendered

在呈现窗口内容后发生。

5

Deactivated

当窗口成为背景窗口时发生。

6

LocationChanged

当窗口位置更改时发生。

7

SourceInitialized

引发此事件是为了支持与 Win32 的互操作。 请参阅 HwndSource。

8

StateChanged

当窗口的 WindowState 属性更改时发生。

窗口类常用方法

Sr. No. 方法和说明
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> 

当您编译并执行上述代码时,将显示以下输出。 当鼠标进入按钮或文本框区域时,会显示工具提示。

窗口输出

我们建议您执行上面的示例代码并尝试该类的一些其他属性和事件。

❮ wpf_controls.html