当前位置: 首页 > news >正文

5.0 WPF的基础介绍1-Grid,Stack,button

一、介绍

布局面板说明
Canvas       允许以任何方式放置子控件。不会对子控件位置施加任何控制
DockPanel       子控件紧贴四条边中的任意一边。最后一个控件则充满剩余区域
Grid                可分为若干行与若干列
StackPanel        

沿水平方向或者垂直方向进行排列

WrapPanel        

也是沿着水平或者竖直排列,但是以多行多列方式排行。

1.Grid可以分成几行几列(行列的高度或宽度可以指定具体尺寸,也可以使用比例(1*,2*,下边表示第3行比第4行高一倍)

    Grid可以嵌套Grid,或者其他控件比如stackpanel

     <Grid.RowDefinitions>
     <RowDefinition Height="20"/>
     <RowDefinition Height="100"/>
     <RowDefinition Height="2*"/>
     <RowDefinition Height="1*"/>
 </Grid.RowDefinitions>

2. stackpanel

        可以横向(Orientation="Horizontal")或者纵向(Orientation="Vertical")排列其中的控件。        

3. button, 文本内容是Content(与winform不同)

二、实际例子如下:

  <Grid ShowGridLines="true">
     <Grid.RowDefinitions>
         <RowDefinition Height="20"/>
         <RowDefinition Height="100"/>
         <RowDefinition Height="2*"/>
         <RowDefinition Height="1*"/>
     </Grid.RowDefinitions>
     <Button x:Name="btnFile" Content="文件" Height="20" Width="50" HorizontalAlignment="Left"  Grid.Column="0" Grid.Row="0" Margin="0,0,0,0  " Click="btnFile_Click"/>
     <Button Content="编辑" Height="20" Width="50" HorizontalAlignment="Left"  Grid.Column="0" Grid.Row="0" Margin="50,0,0,0  "/>
     <Button Content="视图" Height="20" Width="50" HorizontalAlignment="Left"  Grid.Column="0" Grid.Row="0" Margin="100,0,0,0  "/>
     <Button Content="项目" Height="20" Width="50" HorizontalAlignment="Left"  Grid.Column="0" Grid.Row="0" Margin="150,0,0,0  "/>
     <StackPanel Grid.Row="1" Grid.Column="0">
         <Button Content="按钮3" Height="50" Width="50" HorizontalAlignment="Left"/>
         <Button Content="按钮4" Height="50" Width="50" HorizontalAlignment="Left"/>
     </StackPanel>

     <StackPanel Grid.Row="2" Grid.Column="0" Orientation="Horizontal">
         <Button Content="按钮5" VerticalAlignment="Top" Height="30" Width="50" HorizontalAlignment="Left"/>
         <Button Content="按钮6" VerticalAlignment="Center" Height="30" Width="50" HorizontalAlignment="Left"/>
         <Button Content="按钮7" VerticalAlignment="Bottom" Height="30" Width="50" HorizontalAlignment="Left"/>
     </StackPanel>
     <Grid  Grid.Row="3" Grid.Column="0">
         <Grid.ColumnDefinitions>
             <ColumnDefinition Width="70"/>
             <ColumnDefinition />
         </Grid.ColumnDefinitions>
         <StackPanel Grid.Column="0">
             <Button Content="按钮8" Height="20"/>
             <Button Content="按钮9" Height="20"/>
         </StackPanel>
         <StackPanel Grid.Column="1">
             <Button Content="按钮10" Height="20" Width="70"/>
             <Button Content="按钮11" Height="20" Width="70"/>
         </StackPanel>
     </Grid>              
 </Grid>

相关文章:

  • 同级目录下的两个文件怎么import
  • ngx_http_core_main_conf_t
  • DeepSeek-R1 模型现已在 AWS 平台上正式上线
  • SSE SseEmitter.completeWithError(e) 触发的处理逻辑
  • 使用 PowerShell 脚本 + FFmpeg 在 Windows 系统中批量计算 MP4视频 文件的总时长
  • (C语言)文本动态通讯录(动态通讯录升级版)(C语言小项目)
  • macOS 15 通过 MacPorts 安装 PHP 7 构建错误找不到符号在 dns.o 中解决方法
  • 使用 rsync 进行服务器文件同步与优化
  • STM32基础教程——输入捕获模式测量PWM频率
  • SD(Stable Diffusion)模型学习图谱
  • 视频生成的测试时Scaling时刻!清华开源Video-T1,无需重新训练让性能飙升
  • 内网YUM源搭建手册(Internal Network yum Source Construction Manual)
  • c++ primer 阅读手记 第六章
  • RCE——回调后门
  • 【ADC测试】在ADC马密度的方式测试INL和DNL
  • 蓝桥杯python编程每日刷题 day 20
  • postman测试调用WebService时不会自动添加命名空间
  • 交换机与路由器的区别:深入解析
  • nginx优化(持续更新!!!)
  • cv图像分割
  • 襄阳的网站建设公司/扫一扫识别图片
  • 最新手机网站推荐/网络推广方法怎么做
  • 网站建设_网站设计 app制作/全媒体运营师报考条件
  • 做网站需要字体切换/百度软件安装
  • 网站开发说明书/建设网站费用
  • 合肥网站建设公司/中国今天新闻最新消息