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>
当您编译并执行上述代码时,将显示以下输出。 当鼠标进入按钮或文本框区域时,会显示工具提示。
我们建议您执行上面的示例代码并尝试该类的一些其他属性和事件。