`
king_tt
  • 浏览: 2122492 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

WPF:Window外观

 
阅读更多

通过向窗口工作区添加窗口特定内容,可以更改窗口工作区的外观。 为了配置非工作区,Window 提供了多个属性,包括设置窗口图标的 Icon 和设置窗口标题的 Title。

除此之外,还可以通过配置窗口的大小调整模式、窗口样式,以及窗口是否显示为桌面任务栏中的按钮,来更改非工作区边框的外观和行为。我们下面继续讲解一些Window的重要常用的一些特性。

Window 位置

当窗口弹出时,窗口在相对于桌面的 x 和 y 维度有一个坐标位置。 可以通过Left 和 Top 属性来确定此位置。可以设置这些属性以更改窗口的位置。

通过将 WindowStartupLocation 属性设置为下面的 WindowStartupLocation 枚举值之一,还可以指定 Window 第一次出现时的初始位置:

Ø Manual(默认):Window 的启动位置可从代码中设置,或者使用默认的 Windows 位置;

Ø CenterScreen:Window 的启动位置位于包含鼠标光标的屏幕的中央;

Ø CenterOwner:Window 的启动位置位于包含它的 Window 的中央,由 Window.Owner 属性指定。

如果将起始位置指定为 Manual,并且未设置 Left 和 Top 属性,则 Window 将向 Windows 请求显示的位置。

Window 大小

Window大小由多个属性确定,包括各种宽度和高度属性以及 SizeToContent。窗口宽度由 MinWidth、Width 和 MaxWidth 管理窗口高度由 MinHeight、Height 和 MaxHeight 管理。因为各个宽度值和高度值各自指定了一个范围,所以可调整大小的窗口的宽度和高度可以是相应维度的指定范围内的任何值。 若要获取窗口的当前宽度和高度,请分别通过 ActualWidth 和 ActualHeight 获取。如果您想让窗口的宽度和高度适应窗口内容的大小,则可以使用 SizeToContent 属性,该属性具有下面的值:

Ø Manual(默认):不起任何作用;

Ø Width:可以适应内容宽度,这与将 MinWidth 和 MaxWidth 设置为内容的宽度具有相同的效果;

Ø Height:可以适应内容高度,这与将 MinHeight 和 MaxHeight 设置为内容的高度具有相同的效果;

Ø WidthAndHeight:可以适应与内容宽度和高度,这与将 MinHeight 和 MaxHeight 设置为内容的高度并将 MinWidth 和 MaxWidth 设置为内容的宽度具有相同的效果。

Window 大小调整模式

可以通过设置 ResizeMode 属性来配置窗口调整大小的方式,该属性具有下面的值:

Ø NoResize:无法调整窗口的大小。标题栏中不显示“最小化”和“最大化”按钮;

Ø CanMinimize:只能最小化和还原窗口。 同时显示“最小化”和“最大化”按钮,但只有“最小化”按钮处于启用状态;

Ø CanResize(默认):可以调整窗口的大小。同时显示“最小化”和“最大化”按钮,并且两个按钮均处于启用状态;

Ø CanResizeWithGrip:可以调整窗口的大小。 同时显示“最小化”和“最大化”按钮,并且两个按钮均处于启用状态。 窗口的右下角显示一个大小调整手柄。

Window 状态

在可调整大小的Window中,Window可以有三种状态:正常、最小化和最大化。 处于正常状态的窗口是窗口的默认状态。处于此状态的窗口如果是可调整大小的,则允许用户使用大小调整手柄或边框来移动窗口或调整窗口大小。

处于最大化状态的窗口会扩展到可能达到的最大大小,而最大大小只能与 MaxWidth、MaxHeight 和 SizeToContent 属性规定的大小相同。 与最小化窗口一样,最大化窗口的大小也无法通过使用大小调整手柄或拖动边框来调整。

注:窗口的 Top、Left、Width 和 Height 属性的值始终表示正常状态的值,即使当窗口当前处于最大化或最小化状态时也是如此。

除此之外,我们可以通过设置 WindowState 属性来配置窗口的状态,该属性取以下值:

Ø Normal(默认):还原窗口;

Ø Minimized:最小化窗口;

Ø Maximized:最大化窗口。

窗口的默认外观包括一个任务栏按钮,有些类型的窗口没有任务栏按钮。我们通过设置ShowInTaskbar 属性(默认情况下为 true)可以控制是否显示窗口的任务栏按钮。

Window 样式

从窗口的非工作区公开的边框适合大多数应用程序。 但是,在有些情况下,可能需要使用不同类型的边框,或根本不需要边框,这要取决于窗口的类型。

若要控制窗口的边框的类型,就要用到窗口的 WindowStyle 属性:

Ø None:仅工作区可见,不显示标题栏和边框(WindowStyle为None时NavigationWindow将仍然显示导航UI);

Ø SingleBorderWindow(默认):具有单个边框的窗口;

Ø ThreeDBorderWindow:具有3D边框的窗口;

Ø ToolWindow:固定工具窗口。

分享到:
评论

相关推荐

    WPF仿Window7计算器

    最近在网上找不到计算器的例子,所以自己做了一个,和微软的计算器外观差不多---布局,功能上是最简单的那个版本少了一点。有回退,正负,开方,求%,求倒数,等等

    WPF编程宝典 part1

    18.3 创建无外观控件 466 18.3.1 修改颜色拾取器的代码 466 18.3.2 修改颜色拾取器的标记 467 18.3.3 精简控件模板 469 18.4 支持可视化状态 472 18.4.1 开始编写FlipPanel类 473 18.4.2 选择部件和状态 475 18.4.3 ...

    WPF编程宝典 part2

    18.3 创建无外观控件 466 18.3.1 修改颜色拾取器的代码 466 18.3.2 修改颜色拾取器的标记 467 18.3.3 精简控件模板 469 18.4 支持可视化状态 472 18.4.1 开始编写FlipPanel类 473 18.4.2 选择部件和状态 475 18.4.3 ...

    一款非常好的WPF编程宝典2010 源代码

    19.6.7 自定义便笺外观 571 19.7 结束语 572 第20章 打印 573 20.1 基本打印 573 20.1.1 打印元素 574 20.1.2 变换打印输出 576 20.1.3 打印不显示的元素 578 20.1.4 打印文档 579 20.1.5 在文档打印输出中 ...

    Apress.Pro.WPF.in.C.Sharp.2008.2nd.Edition.Feb.2008

    WPF编程宝典——使用C# 2008和.NET 3.5...19.6.7 自定义便笺外观 571 19.7 结束语 572 第20章 打印 573 20.1 基本打印 573 20.1.1 打印元素 574 20.1.2 变换打印输出 576 20.1.3 打印不显示的元素 578 20.1.4 打印文档 ...

    MahApps.Metro:为他们自己的 WPF 应用程序拼凑出更好的 UI-开源

    MahApps.Metro 覆盖所有常见 WPF 控件的默认样式,并赋予它们现代外观。 MahApps.Metro 还包括一些基于 Windows Phone、Windows 8 和 Window 10 (UWP) 应用程序概念的自定义控件。 您可以通过 NuGet UI 或使用包...

    BlurryControls:小型设计库,用于C#的XAML和WPF中的模糊控件

    从AeroGlass设计中可以看出,BlurryControls库旨在使您的应用程序具有模糊的外观。 请考虑该库仅在Windows 10上运行! 在Windows 8.1或更早版本的操作系统上,该应用程序可能只是透明显示的,而没有任何影响。 不要...

    Infragistics_Ultimate_2021.1_with_Samples_and_Help.zip

    该程序的主界面是如此现代的外观,所有重要的功能都设计得很好,在左上角的布局,提供实时访问任何功能,而无需任何以往的专业知识。 即使是新手用户也可以在不付出任何努力的情况下提高整体生产力。 你也可以下载...

    Infragistics_Ultimate_2021.1_with_Samples_and_Help.z01

    该程序的主界面是如此现代的外观,所有重要的功能都设计得很好,在左上角的布局,提供实时访问任何功能,而无需任何以往的专业知识。 即使是新手用户也可以在不付出任何努力的情况下提高整体生产力。 你也可以下载...

    Infragistics_Ultimate_2021.1_with_Samples_and_Help.z02

    该程序的主界面是如此现代的外观,所有重要的功能都设计得很好,在左上角的布局,提供实时访问任何功能,而无需任何以往的专业知识。 即使是新手用户也可以在不付出任何努力的情况下提高整体生产力。 你也可以下载...

    Infragistics_Ultimate_2021.1_with_Samples_and_Help.z03

    该程序的主界面是如此现代的外观,所有重要的功能都设计得很好,在左上角的布局,提供实时访问任何功能,而无需任何以往的专业知识。 即使是新手用户也可以在不付出任何努力的情况下提高整体生产力。 你也可以下载...

    Windows.UI.Composition-Win32-Samples:Windows.UI.Composition Win32示例

    该存储库包含一些示例,这些示例演示了WPF,Windows Forms和C ++ Win32应用程序中Window.UI.Composition API的使用。 可视层为图形,效果和动画提供了高性能的保留模式API。 这是跨Windows 10设备的UI的基础。 UWP ...

    AmmyUI:Ammy语言存储库

    Ammy-XAML平台的UI语言 Ammy是一种现代UI语言,可以在您的项目中替换或...Window "MyApp.MainWindow" { Title: "My first Application" Grid { TextBlock { "Hello, World!" } } } 请注意,您不需要手动导入任何名

    asp.net知识库

    ASP.NET2.0 快速入门 ----默认中的主题外观 数据库开发 ADO.NET 通过DataTable获得表的主键 ADO.NET 2.0 操作实例 ADO.NET 2.0 大批量数据操作和多个动态的结果集 ADO.NET 2.0 异步处理 在ASP.NET中使用WINDOWS验证...

Global site tag (gtag.js) - Google Analytics