Window 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Window
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Window
Public Class Window
- 继承
- 属性
示例
OnLaunched
下面的代码示例演示为 Microsoft Visual Studio 桌面模板中的 WinUI 生成的 OnLaunched 方法重写。 此代码演示了 上 Window
Activate 方法的典型用法。
protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
{
m_window = new MainWindow();
m_window.Activate();
}
private Window m_window;
创建新窗口
在应用中,可以显式创建每个窗口。 创建多个窗口需要 WindowsAppSDK 的 1.0.1 更新,并且仅限于单个线程。
var window = new Window();
window.Content = new TextBlock() { Text = "Hello" };
window.Activate();
还可以在标记中定义新的窗口:
<Window
x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBlock>Hello</TextBlock>
</Window>
具有相应的代码隐藏:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
...
var window = new MainWindow();
window.Activate();
注解
可以在应用中为每个线程创建多个 Window
线程。 请参阅示例中的创建新窗口。
Window
实现 IWindowNative 以通过 Window 的 HWND (WindowHandle) 启用互操作。
通常, Window
用于将 UIElement 设置为表示应用 UI 的内容 。 这通常作为应用激活 (的一部分完成,例如在 OnLaunched 替代) 中,并允许在窗口的整个生存期内更改窗口内容。
确保在初始 激活 时使用的任何 Window
上调用 Activate。 如果使用 Microsoft Visual Studio 中的默认应用模板, 则 App.xaml 代码隐藏文件中包含 Window.Activate。
构造函数
Window() |
初始化 Window 类的新实例。 |
属性
AppWindow |
获取 |
Bounds |
获取一个 Rect 值,该值包含应用程序窗口的高度和宽度(以有效 (视图) 像素为单位)。 |
Compositor |
获取此窗口的 Compositor 。 |
Content |
获取或设置应用程序窗口的可视根。 |
CoreWindow |
桌面应用始终返回 |
Current |
桌面应用始终返回 |
Dispatcher |
始终在Windows 应用 SDK应用中返回 注意
|
DispatcherQueue |
获取 |
ExtendsContentIntoTitleBar |
获取或设置一个值,该值指定是否应隐藏窗口的默认标题栏,以便为应用内容创建空间。 |
SystemBackdrop |
获取或设置要应用于此 |
Title |
获取或设置用于窗口标题的字符串。 |
Visible |
获取一个值,该值报告窗口是否可见。 |
方法
Activate() |
尝试通过将应用程序窗口置于前台并将输入焦点设置为应用程序窗口来激活它。 |
Close() |
关闭应用程序窗口。 |
SetTitleBar(UIElement) |
当 为 |
事件
Activated |
成功激活窗口后发生。 |
Closed |
在窗口关闭时发生。 |
SizeChanged |
在应用窗口首次呈现或更改其呈现大小时发生。 |
VisibilityChanged |
在 Visible 属性的值更改时发生。 |