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 方法替代。 此代码演示 On 上的 Activate 方法 Window的典型用法。
protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
{
m_window = new MainWindow();
m_window.Activate();
}
private Window m_window;
创建新窗口
在应用中,可以显式创建每个窗口。 创建多个窗口需要 1.0.1 更新才能Windows 应用 SDK,并且仅限于单个线程。
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();
}
}
...
MainWindow window = new MainWindow();
window.Activate();
注解
有关详细信息和示例,请参阅 WinUI 和 Windows 应用 SDK的窗口概述。
通常, Window 用于将 UIElement 设置为表示应用 UI 的内容 。 这通常作为应用激活的一部分完成(例如 OnLaunched 重写),并允许你在窗口的整个生存期内更改窗口内容。
确保对初始激活时使用的任何Window内容调用 Activate。 如果使用Microsoft Visual Studio中的默认应用模板,则 Window.Activate 包含在App.xaml代码隐藏文件中。
可以在应用中为每个线程创建多个 Window 线程。 请参阅 显示应用的多个窗口。
Window 实现 IWindowNative 以通过窗口的 HWND(WindowHandle)启用互操作。
构造函数
| 名称 | 说明 |
|---|---|
| Window() |
初始化 Window 类的新实例。 |
属性
| 名称 | 说明 |
|---|---|
| AppWindow |
获取与此 XAML |
| Bounds |
获取一个 Rect 值,该值包含应用程序窗口的高度和宽度(以有效(视图)像素为单位。 |
| Compositor |
获取此窗口的 Compositor 。 |
| Content |
获取或设置应用程序窗口的可视根。 |
| CoreWindow |
[已弃用]始终返回 |
| Current |
始终返回 |
| Dispatcher |
[已弃用]始终返回 |
| DispatcherQueue |
|
| ExtendsContentIntoTitleBar |
获取或设置一个值,该值指定是否应隐藏窗口的默认标题栏,以便为应用内容创建空间。 |
| Height |
表示当前 应用程序的窗口。 |
| MaxHeight |
表示当前 应用程序的窗口。 |
| MaxWidth |
表示当前 应用程序的窗口。 |
| MinHeight |
表示当前 应用程序的窗口。 |
| MinWidth |
表示当前 应用程序的窗口。 |
| SystemBackdrop |
获取或设置要应用于此 |
| Title |
获取或设置用于窗口标题的字符串。 |
| Visible |
获取一个值,该值报告窗口是否可见。 |
| Width |
表示当前 应用程序的窗口。 |
方法
| 名称 | 说明 |
|---|---|
| Activate() |
尝试通过将应用程序窗口引入前台并设置输入焦点来激活应用程序窗口。 |
| Close() |
关闭应用程序窗口(销毁)。 |
| SetTitleBar(UIElement) |
在 XAML 元素上启用标题栏行为(如果为 |
活动
| 名称 | 说明 |
|---|---|
| Activated |
成功激活或停用窗口时发生。 |
| Closed |
窗口关闭时发生。 |
| SizeChanged |
当窗口的呈现大小发生更改时发生。 |
| VisibilityChanged |
当 Visible 属性的值发生更改时发生。 |