堆积面板

书名:WPF专业编程指南
作者:李应保
出版社:电子工业出版社
出版时间:2010-01
ISBN:9787121100116


一、堆积面板

  • (StackPanel)
    StackPanel是最简单的一种控制面板,它把其中的UI元素按横向或纵向堆积排列。

二、示例

  • 在XAML中使用StackPanel:
  <Window x:Class="Yingbao.Chapter3.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="送元二使安西" Height="300" Width="300">
      <StackPanel  Orientation ="Vertical"  >
    <TextBlock   FontSize="16" Foreground="Brown">渭城朝雨浥轻尘,</TextBlock >
    <TextBlock   FontSize="16" Foreground="Brown">客舍青青柳色新.</TextBlock >
    <TextBlock   FontSize="16" Foreground="Brown">劝君更尽一杯酒,</TextBlock >
    <TextBlock   FontSize="16" Foreground="Brown">西出阳关无故人.</TextBlock >
    <Button Background ="Coral" Click ="OnVertical">竖排</Button>
      </StackPanel>
  </Window>
  • 在StackPanel里加了四个TextBlock控件,其内容为王维的四句诗,最后加了一个Button控件,上面这段XAML的运行结果如图3-2所示。


    图3-2 StackPanel示例
  • 注意:
    在这段程序中,并没有指定TextBlock或Button的绝对位置坐标,而是在StackPanel中把Orientation属性设为纵向(Vertical),StackPanel就会自动地把其中的UI元素按照先后次序堆积起来,先进入StackPanel的元素放在最上面,后进入StackPanel的元素放在最下面。

三、自动调整

  • 有时候需要把视窗的大小根据其中的内容来自动调整,方法是设置视窗的SizeToContent属性. SizeToContent是枚举类型,表3-1列出了其可取的值及其意义。


    表3-1 SizeToContent值及其意义
  • 若你对StackPanel和窗口间或UI元素与UI元素间的距离不满意,可以调整StackPanel或界面元素的Margin属性。
    Margin的类型为Thickness,可以对其左、右、上、下分别设置。WPF内部对Margin的赋值操作进行了重载,若只指定一个数值,WPF会自动把left、right、top、bottom都相应地设为该值

四、滚动条

  • 另外一种情况:视窗里的内容比计算机可用屏幕的尺寸还要大,这时候就要在视窗内加滚动条。
    WPF提供ScrollBar和ScrollViewer来实现屏幕滚动,一般认为ScrollViewer比ScrollBar在滚动视窗中的内容时用起来方便。

  • ScrollViewer还提供了8个用于控制每次滚动范围的方法:LineUp、LineDown、LineLeft、LineRight、PageUp、PageDown、PageLeft和PageRight这些方法可以在程序中模拟人工操作滚动条。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 总览: 按钮 (Buttons) Button:基本按钮控件,用户点击时触发操作或事件。 RepeatButton...
    c624ef3ffb3f阅读 162评论 0 0
  • 一、WPF排版 WPF中的基本控制面板类控件都是从 Panel 类中派生出来的, Panel 本身是 UIElem...
    AC编程阅读 362评论 0 1
  • 布局和面板教程 教程数据 本教程致力于显示GUI元素如何相对于其容器定位和调整大小。布局是各种设备上应用程序可用性...
    YottaYuan阅读 734评论 0 1
  • 常见试题 行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-h...
    他大舅啊阅读 2,604评论 1 5
  • VS2015 git不支持ssh协议 遇到编译报错的问题,有的时候重启下vs也许就能解决 Windows: 程序的...
    清水包哟阅读 1,058评论 0 0

友情链接更多精彩内容