GridUniformGrid容器(五)-创新互联

一、Grid
Grid 是以表格形式组织控件的一种布局方式,与 Java AWT 中的 GridLayout 类似,但
区别在于
WPF 中的 Grid 的每一个单元格中可以放置多个控件,但控件可能会层叠在一

WPF 中的 Grid 支持单元格的合并,类似于 HTML 中的 table td 中的 row
span 和 colspan
Grid 中的行和列可以自定义高度(Height)和宽度(Width)
在设置高度和宽度时可以采用两种写法:
1)Height=”60”:不加“星号”表示固定的高度
2)Height=”60*”:加“星号”表示“加权”的高度,在调整窗体大小时,此
高度或宽度会按窗体大小改变的比例进行缩放
如:
1: <Grid>
2: <Grid.RowDefinitions>
3: <RowDefinition Height="60" />
4: <RowDefinition Height="202*" />
5: </Grid.RowDefinitions>
6: <Grid.ColumnDefinitions>
7: <ColumnDefinition/>
8: <ColumnDefinition/>
9: </Grid.ColumnDefinitions>
10: <Button Grid.Column="0" Grid.Row="0" Height="30" VerticalA
lignment="Top">ButtonA</Button>
11: <Button Grid.Column="0" Grid.Row="0" Height="30" VerticalA
lignment="Bottom">ButtonB</Button>
12: <Button Grid.Column="1" Grid.Row="0">ButtonC</Button>
13: <Button Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="2">B
uttonD</Button>
14: </Grid>

创新互联长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为兰州企业提供专业的成都网站设计、做网站,兰州网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。

Grid  UniformGrid 容器(五)

二、使用 GridSplit 分割
可以使用 GridSplit 控件结合 Grid 控件实现类似于 Windows 应用程序中 SplitContai
ner 的功能,如下面的应用程序:

Grid  UniformGrid 容器(五)

要实现以下的功能:
ButtonA 和 ButtonB、ButtonC 组成的整体,可以左右拖动,改变两者的宽度
ButtonB 和 ButtonC 可以上下拖动,改变两者的高度
实现以上功能的 XAML 代码如下:
1: <Grid>
2: <Grid.ColumnDefinitions>
3: <ColumnDefinition Width="88*" />
4: <ColumnDefinition Width="Auto" />
5: <ColumnDefinition Width="190*" />
6: </Grid.ColumnDefinitions>
7: <Grid.RowDefinitions>
8: <RowDefinition Height="172*" />
9: <RowDefinition Height="Auto" />
10: <RowDefinition Height="90*" />
11: </Grid.RowDefinitions>
12:
13: <Button Content="ButtonA" Margin="3" Grid.Row="0" Grid.Col
umn="0" Grid.RowSpan="3" />
14: <Button Content="ButtonB" Margin="3" Grid.Row="0" Grid.Col
umn="2" />
15: <Button Content="ButtonC" Margin="3" Grid.Row="2" Grid.Col
umn="2" />
16:
17: <GridSplitter Width="3" HorizontalAlignment="Stre
tch" VerticalAlignment="Stretch"
18: Grid.Row="0" Grid.Column="1" Grid.RowSpan="3">
</GridSplitter>
19: <GridSplitter Height="3" VerticalAlignment="Stretch" Horiz
ontalAlignment="Stretch"
20: Grid.Row="1" Grid.Column="2"></GridSplitter>
21: </Grid>

其核心想法为:
定义 3*3 的表格,其中放置分割线的列(下标为 1)和行(下标为 1)的宽度和高度设置
为 Auto
ButtonA 放置在 Row=0、Column=0、RowSpan=3 的单元格中
ButtonB 放置在 Row=0、Column=2 的单元格中
ButtonC 放置在 Row=2、Column=2 的单元格中
竖直分割线放置在 Row=0、Column=1、ColSpan=3 的单元格中
水平分割线放置在 Row=1、Column=2 的单元格中

如下图所示:
Grid  UniformGrid 容器(五)

三、UniformGrid
UniformGrid 控件为控件提供了一种简化的网格布局。当控件添加到 Unif
ormGrid 时,它们会排列在一个网格模式中,该网格模式会自动调整以使控
件之间的距离保持均匀。单元格的数目将进行调整,以适应控件的数目。例如,
如果四个控件添加到 UniformGrid 中,它们将安排在包含四个单元格的网格中。
如:
1: <UniformGrid>
2: <Button Content="ButtonA" />
3: <Button Content="ButtonB" />
4: <Button Content="ButtonC" />
5: <Button Content="ButtonD" />
6: <Button Content="ButtonE" />
7: <Button Content="ButtonF" />
8: <Button Content="ButtonG" />
9: <Button Content="ButtonH" />
10: </UniformGrid>

Grid  UniformGrid 容器(五)

在使用 UniformGrid 的时候:
各单元格的大小完全相同
单元格的数量取决于放入的控件的数量,且单元格一定是行、列数相同的,即
1*1、2*2、3*3、4*4…的单元格分布

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

本文题目:GridUniformGrid容器(五)-创新互联
本文路径:https://www.cdcxhl.com/article8/cecgop.html

成都网站建设公司_创新互联,为您提供网站策划品牌网站制作商城网站网站维护网站内链外贸网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

商城网站建设