WPF教程(九)窗體

在創建WPF應用的時候,你第一個看到的就是窗體類。它作爲窗體的基礎,提供標準的邊框、工具條、最大化、最小化和關閉按鈕。WPF窗體是XAML文件和後臺代碼文件的混合體。在VS(Express)裏面創建一個WPF應用,將會生成一個默認窗體,顯示如下代碼:

<span style="font-size:14px;"><Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Grid>

    </Grid>
</Window></span>
x:Class屬性指示了該XAML文件使用哪個類,這裏默認的是Window1,是VS自動生成的。在VS的項目樹裏,你會發現它是XAML文件的一個子節點。默認如下:

<span style="font-size:14px;">using System;
using System.Windows;
using System.Windows.Controls;
//…more using statements

namespace WpfApplication1
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }
    }
}</span>
Window1類是一個局部類,運行時聯合XAML文件顯示一個完整的窗體。實際上是調用InitializeComponent()的結果。

回到XAML文件,我們注意到,在窗體元素下還有很多有意思的屬性,如Title。Title定義了窗體的標題、其實高和寬。另外還有一些命名空間的定義,我們會在XAML章節提到。另外,VS在窗體裏面還創建了一個網格控件。網格是一種WPF容器。WPF容器可以是一個panel或者control,但是窗體只能有一個子控件,而Panel可以包含多個子控件,所有通常使用Panel。在後面我們將仔細研究各式各樣的容器,它們在WPF中非常重要。


重要的窗口屬性

WPF窗體類包含一堆有意思的屬性,用於設置應用窗口的外觀。下面是最有用的一些屬性列表:

Icon——允許你定義窗口的圖標,位於窗口的左上角,窗口標題的左側。

ResizeMode——是否允許最終用戶改變窗口大小。默認的是CanResize,也就是允許調整窗口大小,允許使用最大化/最小化按鈕或者拖拽邊框。CanMinimize允許最小化窗體,但是不允許最大化,也不允許拖大或者拉小。NoResize限制最多,不再顯示最大化和最小化按鈕,也不能被拖大或拉小。

ShowInTaskbar——默認的是true,如果你設置成false,窗體將不會出現在任務欄中。這對於次要窗口或需要最小化到托盤的應用來說特別有用。

SizeToContent——設置是否允許窗口自適應它的內容。默認的是手動,不會自動調整適應。其他選項如寬、高分別對應於自動調整水平、垂直的尺寸。

Topmost——默認的是false,如果設置成true,那麼你的窗口將置於其他窗口的上面,除非最小化。這個屬性只在特殊場景下才使用。

WindowStartupLocation——控制窗口的初始化位置,默認的是手動,也就是根據窗口的Top和Left屬性。其他選項如CenterOwner意味着窗口裏面居中,CenterScreen意味中屏幕居中。

WindowState——窗口的初始化狀態,可以是Normal, Maximized or Minimized。默認的是Normal,其他只有在需要時才使用。

還有很多很多屬性,請自行學習。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章