2021-08-08 WPF控件专题 WrapPanel 控件详解[通俗易懂]

2021-08-08 WPF控件专题 WrapPanel 控件详解[通俗易懂]1.WrapPanel控件介绍流面板子元素按顺序排列,如果按水平方向:从左到右,超出部分,自动换行到下一行垂直从上到下,下一列排列方向:OrientationItemWidthItemHeight调整面板的尺寸时,内部子元素的布局–自动调整弥补StackPanel的不足StackPanel与WrapPanel结合使用2.具体案例<BorderBorderBrush=”Red”BorderTh

大家好,又见面了,我是你们的朋友全栈君。

1.WrapPanel 控件介绍

流面板 子元素按顺序排列,如果按水平方向:从左到右,超出部分,自动换行到下一行
垂直 从上到下, 下一列

排列方向:Orientation ItemWidth ItemHeight

调整面板的尺寸时,内部子元素的布局–自动调整

弥补StackPanel的不足

StackPanel与WrapPanel结合使用

2.具体案例

<Border BorderBrush="Red" BorderThickness="3" CornerRadius="5" >
    <StackPanel>
        <WrapPanel Name="wpPanels2" Margin="0,0,0,20">
            
        </WrapPanel>
        <WrapPanel Name="wpPanels" Orientation="Vertical" ItemHeight="30" ItemWidth="60"  Height="300" >
            <!--<Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>
        <Button>btn1</Button>-->
        </WrapPanel>
    </StackPanel>
</Border>
private void Window_Loaded(object sender, RoutedEventArgs e)
{ 
   
    for (int i = 1; i <= 100; i++)
    { 
   
        Button btn = new Button();
        btn.Content = "btn" + i.ToString("00") + "号";
        btn.Background = new SolidColorBrush(Colors.Gray);
       // btn.Name = "btn" + i;
        btn.Margin = new Thickness(2, 2, 0, 0);
        wpPanels.Children.Add(btn);
    }
    for (int i = 1; i <= 20; i++)
    { 
   
        Button btn = new Button();
        btn.Content = "btn" + i.ToString("00") + "号";
        btn.Background = new SolidColorBrush(Colors.Gray);
        //btn.Name = "btn" + i;
        btn.Margin = new Thickness(2, 2, 0, 0);
        wpPanels2.Children.Add(btn);
    }
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163302.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月23日 下午9:16
下一篇 2022年7月23日 下午9:36


相关推荐

  • python量化分析系列之—使用python获取股票历史数据和实时分笔数据

    python量化分析系列之—使用python获取股票历史数据和实时分笔数据使用python获取股票历史数据和实时分笔数据

    2022年6月24日
    37
  • 自用分享|我手机的22个免费Ai软件

    自用分享|我手机的22个免费Ai软件

    2026年3月15日
    2
  • RAID 磁盘阵列 详解[通俗易懂]

    RAID 磁盘阵列 详解[通俗易懂]RAID,Redundant Arrays of Independent Disks的简称,独立磁盘冗余阵列,简称磁盘阵列。 磁盘阵列其实也分为软阵列 (Software Raid)和硬阵列 (Hardware Raid) 两种.  软阵列:即通过软件程序并由计算机的 CPU提供运行能力所成. 由于软件程式不是一个完整系统故只能提供最基本的 RAID容错功能. 其他如热备用硬盘的设置,

    2022年6月9日
    64
  • 关于RuntimeException[通俗易懂]

    关于RuntimeException[通俗易懂]关于RuntimeException今天在写一个异常类的时候继承了RuntimeException,想一探究竟。RuntimeException:在定义方法时不需要声明会抛出runtimeException。Exception:定义方法时必须声明所有可能会抛出的exception。于是去查看了一翻api。publicRuntimeException() 提出了一种新的null运行时异常的详细信息。原因是没有初始化,初始化后可通过调用Throwable.initCause(..

    2022年7月24日
    25
  • js 正则替换换行符

    js 正则替换换行符vardiv=document.getElementById(‘div’);vars=div.innerHTML.replace(/(\n|\r|(\r\n)|(\u0085)|(\u2028)|(\u2029))/g,””);//g的意思是:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。//取消了空格之后在做其他的替换才可以,否则不能替换

    2022年5月24日
    142
  • Deepfacelab 新手教程【AI智能换脸】

    Deepfacelab 新手教程【AI智能换脸】欢迎进入本教程 本教程不定期更新本文教程内容更新时间为 2019 2 本文最后更新时间为 2019 3 4 欢迎进群讨论 我不是群主 群主的各号码请看 https deepfakes com cn index php 资助升级群这几天朱茵换脸杨幂的事件上了热门 我们群不存在该违法问题 然而因为网上的这个事件 2 群排队已经可以说排到了明年 群主表示等风波结束了再考虑新群 毕竟群主

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号