zoukankan      html  css  js  c++  java
  • WPF-使用面板控制内容布局,比较Canvas,WrapPanel,StackPanel,Grid,ScrollViewer

    WPF-使用面板控制内容布局,比较Canvas,WrapPanel,StackPanel,Grid,ScrollViewer

    分类: WPF 660人阅读 评论(0) 收藏 举报

    <window>作用月内只能放置一个元素,窗口的Content属性只能设置一个对象。使用面板控件。

    Canvas:使用绝对定位,如果窗口的大小小于canvas面板,一部分内容会看不见,canvas中的项不能自动调整大小,在canvas内的控件指定左上角,用Canvas.Top和Canvas.Left属性。

    WrapPanel:内容随窗口大小的变化而变化,内容按声明顺序逐个呈现,用ItemWidth和ItemHeight控制子项的默认尺寸。根据Orientation设置Vertical,Horizontal布局。

    StackPanel:不会内容折行,内容会自动拉伸。根据Orientation设置Vertical,Horizontal布局。

    Grid:划分为单元格,定义并配置列,定义并配置行,设置每个单元格内容。

    Grid对象支持拆分器(splitter),允许用户调整网格类型中行或列的大小,每个科调整的单元格都会根据所包含的项进行重塑。添加拆分器,只需要定义<GridSplitter>控件,并使用附加语法指定要拆分的行或列。

    1. <Grid.ColumnDefinitions>  
    2.                 <ColumnDefinition <span style="color:#ff0000;">Width="Auto"</span> />  
    3.                 <ColumnDefinition/>  
    4.             </Grid.ColumnDefinitions>  
    5.             <span style="color:#ff0000;"><GridSplitter</span> Grid.Column="0" Width="5" Background="Gray"/>  
    6.             <StackPanel Grid.Column="0" VerticalAlignment="Stretch">  
    7.                 <Label Name="lblSpellingInstructuins" FontSize="14" Margin="10,10,0,0">Spell Hints</Label>  
    8.                 <Expander Name="expanderSpelling" Header="try these">  
    9.                     <Label Name="lblSpellingHints" FontSize="12"/>  
    10.                 </Expander>                 
    11.             </StackPanel>  

    注意:支持拆分器的列的Width值为Auto。

    ScrollViewer:内容自动滚动。

    DockPanel: 将内容锁定在面板的某一侧(Top,Bottom,Left,Right),好处:在用户调整窗口大小时,每个元素仍然能连接到指定的面板边缘。

    原文引用:http://blog.csdn.net/yuhaoyang1/article/details/7485989

  • 相关阅读:
    MinGW离线包下载地址
    词法分析器--DFA(c++实现)
    linux下shell统计文件目录下所有代码行数
    四则运算表达式
    BliBli抢楼全攻略
    python 电影下载链接爬虫
    in, out, ref
    联合查询
    SQL语句大全
    LINQ
  • 原文地址:https://www.cnblogs.com/meimao5211/p/3368194.html
Copyright © 2011-2022 走看看