WPF之UniformGrid使用小記


一. 小記

這邊為了以后看的方便,對 UniformGrid 的使用做了一個簡單的歸納。UniformGrid 是一種橫向的網格分割、縱向的網格分割分別是均等的分割的布局類型,故稱為 " 均分布局 "。

二. 一些使用上的特點

1. 各個單元格的大小完全相同,寬與高分別相同;

2. 默認情況下,單元格的數量取決於放入的控件的數量,且單元格一定是行、列數相同,即 1X1、2X2 、3X3 等等的單元格分布;

測試代碼如下:

<UniformGrid>
    <Rectangle Fill="Aqua"/>
    <Rectangle Fill="Red"/>
</UniformGrid>

測試結果如下,UniformGrid 中只有兩個元素,但是顯示成了 2X2 分布:

(重要、常用) 3. UniformGrid 有兩個屬性,分別是:Columns 和 Rows ,它們是分別用來指定當前的最大列數和最大的行數,如果只設置了其中一個而不設置另外一個的話,那么沒有設置的那個默認為 1;在設置的這兩個屬性的情況下,UniformGrid 不再會按照行、列數相同來分布,而是按照用戶指定的 Columns 和 Rows 來分布;

測試代碼,我們創建一個 2X3 的 UniformGrid:

<UniformGrid Columns="2" Rows="3">
    <Rectangle Fill="Aqua"/>
    <Rectangle Fill="Red"/>
    <Rectangle Fill="Red"/>
    <Rectangle Fill="Aqua"/>
    <Rectangle Fill="Aqua"/>
    <Rectangle Fill="Red"/>
</UniformGrid>

測試結果如下:

4. 對於 Grid 的屬性 Grid.Row 、Grid.Column 和 Grid.RowSpan 、Grid.ColumnSpan 用在 UniformGrid 上會沒有任何的效果(雖然可以寫上去,因為是附加屬性);

測試代碼如下:

<UniformGrid>
    <Rectangle Fill="Aqua" Grid.Column="2" Grid.Row="3"/>
    <Rectangle Fill="RoyalBlue"/>
    <Rectangle Fill="RoyalBlue" Grid.ColumnSpan="2"/>
</UniformGrid>

測試結果如下,對於 Grid.Row 、Grid.Column 和 Grid.ColumnSpan、Grid.RowSpan 是無效的:

三. 測試代碼下載

代碼下載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM