目录

第2章WPF窗体及其属性

目录

第2章、WPF窗体及其属性

1、窗体的宽与高。 https://i-blog.csdnimg.cn/direct/84d5df71bee345068a5fbc517563452b.png

2、启动窗体设置

https://i-blog.csdnimg.cn/direct/ff9dff42849a4f488fcd00444ca0f9e7.png

3、窗体的启动位置设置

https://i-blog.csdnimg.cn/direct/073580e7f408482cbd96dc8994d10026.png

4、窗体图标更换

https://i-blog.csdnimg.cn/direct/955e68ee8ace4381a008b5c8c0d0697c.png

5、应用程序的图标更改

https://i-blog.csdnimg.cn/direct/f16d241ef9354da0bab77151c5065ab7.png

6、

https://i-blog.csdnimg.cn/direct/06b06e93703d4d86b45c7cf414e109fc.png

7、窗体属性汇总:

  1. AllowsTransparency

    类型: bool

    描述: 该属性决定窗口是否可以有透明效果。如果设置为true,窗口的背景必须设置为Transparent,并且窗口的WindowStyle属性必须设置为None。

    默认值: false

  2. Background

    类型: Brush

    描述: 该属性用于设置窗口的背景颜色或背景图像。可以使用纯色、渐变色或图像作为背景。

    默认值: null

  3. BorderBrush

    类型: Brush

    描述: 该属性用于设置窗口边框的颜色或样式。

    默认值: null

  4. BorderThickness

    类型: Thickness

    描述: 该属性用于设置窗口边框的厚度。

    默认值: 0

  5. ClipToBounds

    类型: bool

    描述: 该属性决定是否裁剪超出窗口边界的内容。

    默认值: false

  6. Content

    类型: object

    描述: 该属性用于设置窗口的内容。可以是一个控件、布局容器或其他UI元素。

    默认值: null

  7. DefaultStyleKey

    类型: object

    描述: 该属性用于设置窗口的默认样式。通常在样式重写时使用。

    默认值: typeof(Window)

  8. FontFamily

    类型: FontFamily

    描述: 该属性用于设置窗口中文字的字体。

    默认值: 系统默认字体

  9. FontSize

    类型: double

    描述: 该属性用于设置窗口中文字的大小。

    默认值: 系统默认字体大小

  10. FontWeight

    类型: FontWeight

    描述: 该属性用于设置窗口中文字的粗细。

    默认值: Normal

  11. Foreground

    类型: Brush

    描述: 该属性用于设置窗口中文字的前景色。

    默认值: Black

  12. Height

    类型: double

    描述: 该属性用于设置窗口的高度。

    默认值: Auto(根据内容自动调整)

  13. HorizontalContentAlignment

    类型: HorizontalAlignment

    描述: 该属性用于设置窗口内容的水平对齐方式(左、中、右、拉伸)。

    默认值: Stretch

  14. Icon

    类型: ImageSource

    描述: 该属性用于设置窗口的图标。

    默认值: null

  15. IsEnabled

    类型: bool

    描述: 该属性用于决定窗口是否可用(即用户是否可以与窗口交互)。

    默认值: true

  16. IsHitTestVisible

    类型: bool

    描述: 该属性用于决定窗口是否可以响应鼠标事件。

    默认值: true

  17. IsTabStop

    类型: bool

    描述: 该属性用于决定窗口是否可以通过Tab键导航到。

    默认值: true

  18. Left

    类型: double

    描述: 该属性用于设置窗口的左边缘位置。

    默认值: NaN(自动定位)

  19. MaxHeight

    类型: double

    描述: 该属性用于设置窗口的最大高度。

    默认值: PositiveInfinity

  20. MaxWidth

    类型: double

    描述: 该属性用于设置窗口的最大宽度。

    默认值: PositiveInfinity

  21. MinHeight

    类型: double

    描述: 该属性用于设置窗口的最小高度。

    默认值: 0

  22. MinWidth

    类型: double

    描述: 该属性用于设置窗口的最小宽度。

    默认值: 0

  23. Name

    类型: string

    描述: 该属性用于为窗口指定一个唯一的名称,通常用于在代码中引用窗口。

    默认值: null

  24. Opacity

    类型: double

    描述: 该属性用于设置窗口的透明度,值范围从0(完全透明)到1(完全不透明)。

    默认值: 1

  25. ResizeMode

    类型: ResizeMode

    描述: 该属性用于设置窗口的调整大小模式,可能的值包括NoResize、CanMinimize、CanResize和CanResizeWithGrip。

    默认值: CanResize

    在WPF中,ResizeMode 是一个枚举类型,用于控制窗体的调整大小行为。NoResize、CanMinimize、CanResize 和 CanResizeWithGrip 是 ResizeMode 的四个枚举值,它们分别定义了窗体的不同调整大小行为。以下是它们的详细解释:

    属性 行为 适用场景

    NoResize 窗体不能调整大小,最大化按钮和最小化按钮被禁用。 固定大小的窗口或对话框。

    CanMinimize 窗体可以最小化,但不能最大化或调整大小。 固定大小的窗口,但允许最小化。

    CanResize 窗体可以调整大小,最大化按钮和最小化按钮可用。 可调整大小的主窗口或对话框。

    CanResizeWithGrip 窗体可以调整大小,并且在右下角显示一个调整大小的手柄(Grip)。 可调整大小的窗口,明确提示用户。

    注意事项

    NoResize 和 CanMinimize:

这两种模式都禁止用户调整窗体大小,但 CanMinimize 允许用户最小化窗体。

CanResize 和 CanResizeWithGrip:

这两种模式都允许用户调整窗体大小,但 CanResizeWithGrip 在右下角显示一个调整大小的手柄,提供更直观的提示。

默认值:

如果未设置 ResizeMode,默认值为 CanResize。

  1. ShowInTaskbar

类型: bool

描述: 该属性决定窗口是否显示在任务栏上。

默认值: true

  1. SizeToContent

类型: SizeToContent

描述: 该属性决定窗口是否自动调整大小以适应其内容,可能的值包括Manual、Width、Height和WidthAndHeight。

默认值: Manual

在WPF中,SizeToContent 是一个枚举类型,用于指定窗体如何根据其内容自动调整大小。Manual、Width、Height 和 WidthAndHeight 是 SizeToContent 的四个枚举值,它们分别定义了窗体如何根据内容调整大小。以下是它们的详细解释:

属性 行为 适用场景

Manual 窗体的大小不会根据内容自动调整,完全由开发者手动指定。 固定大小的窗口或对话框。

Width 窗体的宽度根据内容自动调整,高度固定。 内容宽度动态变化的窗口。

Height 窗体的高度根据内容自动调整,宽度固定。 内容高度动态变化的窗口。

WidthAndHeight 窗体的宽度和高度都根据内容自动调整。 内容宽度和高度都可能动态变化的窗口。

注意事项

Manual 模式:

如果未设置 Width 和 Height,窗体的大小可能不合适,内容可能超出窗体边界。

Width 和 Height 模式:

这些模式只会根据内容调整一个维度(宽度或高度),另一个维度需要手动设置或保持不变。

WidthAndHeight 模式:

这是最灵活的模式,允许窗体根据内容自动调整大小,适用于内容可能动态变化的情况。

  1. Top

类型: double

描述: 该属性用于设置窗口的上边缘位置。

默认值: NaN(自动定位)

  1. Topmost

类型: bool

描述: 该属性决定窗口是否始终保持在其他窗口的上方。

默认值: false

  1. Visibility

类型: Visibility

描述: 该属性用于设置窗口的可见性,可能的值包括Visible、Hidden和Collapsed。

默认值: Visible

属性值 是否可见 是否占用布局空间 适用场景

Visible 是 是 控件需要显示并参与布局。

Hidden 否 是 控件暂时隐藏但需要保留布局位置。

Collapsed 否 否 控件完全隐藏且不需要保留布局空间。

  1. WindowStartupLocation

类型: WindowStartupLocation

描述: 该属性用于设置窗口启动时的初始位置,可能的值包括Manual、CenterOwner和CenterScreen。

默认值: Manual

在WPF中,WindowStartupLocation 是一个枚举类型,用于指定窗体在首次显示时的初始位置。Manual、CenterOwner 和 CenterScreen 是 WindowStartupLocation 的三个枚举值,它们分别定义了窗体的不同启动位置行为。以下是它们的详细解释:

属性 行为 适用场景

Manual 窗体的初始位置由 Window.Left 和 Window.Top 属性手动指定。 需要精确控制窗体位置时使用。

CenterOwner 窗体的初始位置位于其所有者窗体的中心;若无所有者,则位于屏幕中心。 子窗体或对话框显示在父窗体中心时使用。

CenterScreen 窗体的初始位置位于屏幕的中心。 主窗口或独立窗口显示在屏幕中心时使用。

注意事项

Manual 模式:

如果未设置 Window.Left 和 Window.Top,窗体会显示在默认位置(通常是屏幕左上角)。

如果设置了 Window.Left 和 Window.Top,窗体会显示在指定的位置。

CenterOwner 模式:

必须通过 Window.Owner 属性设置所有者窗体,否则行为与 CenterScreen 相同。

CenterScreen 模式:

无论是否有所有者窗体,窗体会始终显示在屏幕中心。

  1. WindowState

类型: WindowState

描述: 该属性用于设置窗口的状态,可能的值包括Normal、Minimized和Maximized。

默认值: Normal

  1. WindowStyle

类型: WindowStyle

描述: 该属性用于设置窗口的样式,可能的值包括None、SingleBorderWindow、ThreeDBorderWindow和ToolWindow。

默认值: SingleBorderWindow

当然,可以将 WindowStyle 的不同值及其特点和适用场景以表格的形式进行对比分析。以下是一个详细的表格:

属性值 作用 特点 适用场景

None 窗口没有边框,不包含标准的窗口按钮(如最小化、最大化和关闭按钮)。 - 完全自定义窗口设计

  • 需要手动实现窗口的拖动、最小化、最大化和关闭功能。 - 自定义对话框或窗口,需要独特的外观和行为。

  • 需要移除标准窗口装饰以实现特定的UI设计。

    SingleBorderWindow 窗口具有单线边框,并包含标准的窗口按钮(最小化、最大化/还原和关闭)。 - 窗口具有标准的单线边框。

  • 包含标准的窗口按钮,提供默认的窗口操作功能。 - 需要标准的窗口外观和行为。

  • 适用于大多数标准应用程序窗口。

    ThreeDBorderWindow 窗口具有三维边框效果,并包含标准的窗口按钮。 - 窗口边框具有三维立体效果。

  • 包含标准的窗口按钮,提供默认的窗口操作功能。 - 需要传统的三维边框样式窗口。

  • 适用于希望窗口具有经典外观的应用程序。

    ToolWindow 窗口具有工具窗口的样式,通常边框较浅,标题栏颜色不同。 - 边框和标题栏的颜色与普通窗口不同,通常更浅,以区别于主应用程序窗口。

  • 通常用于工具窗口或辅助窗口,以与主窗口区分。 - 工具窗口、设置窗口或其他辅助窗口,需要与主窗口在视觉上有所区别。

  1. Width

    类型: double

    描述: 该属性用于设置窗口的宽度。

    默认值: Auto(根据内容自动调整)

  2. Title

    类型: string

    描述: 该属性用于设置窗口的标题。

    默认值: null