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);
    }
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 纳兰诗词

    纳兰诗词“空负凌云万丈志,一生襟抱未曾开”,情雅成诗,爱淡成词,如果没有潋滟坦白的心思,是无法走进古人留在书册中的幻境的。凡心所向,皆是虚妄。——一个人吃饭,旅行,到处走走停停;也一个人看书,弹琴,自己对话谈心。自我收敛,内心沉静,是我希望获得的心境,对纳兰容若不熟的人,恐怕会比较熟悉另外一个名字,纳兰明珠。如果我再说一句《七剑下天山》,恐十白你已经在点头微笑了:你说的是这个人。纳兰容若诞于清顺治

  • 字典树和前缀树_前缀树和后缀树

    字典树和前缀树_前缀树和后缀树从Trie树(字典树)谈到后缀树作者:July、yansha。出处:http://blog.csdn.net/v_JULY_v 。 引言   常关注本blog的读者朋友想必看过此篇文章:从B树、B+树、B*树谈到R树,这次,咱们来讲另外两种树:Tire树与后缀树。不过,在此之前,先来看两个问题。   第一个问题:一个文本文件,大约有一万行,每行一个词,要求统计出其中最频繁出现的前10个词,

  • oracle srvctl命令,Oracle SRVCTL使用说明

    oracle srvctl命令,Oracle SRVCTL使用说明SRVCTL是Oracle9iRAC集群配置管理的工具。本文是对SRVCTL的所有命令进行详细说明的一篇参考文档。添加数据库或实例的配置信息。在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME和ORACLE_SID参数匹配。srvctladddatabase-ddatabase_name[-mdomain_name]-ooracle_home[-sspfi…

  • pycharm配置远程服务器_服务器asp环境配置

    pycharm配置远程服务器_服务器asp环境配置前言1、说明首先介绍下我本人情况,我在windows笔记本电脑上下载了Pycharm专业版,因为我本人只是用来跑代码,想把代码自动同步起来,因此特地通过pycharm来远程使用Linux上配置好的环境,加速代码运行。当然大家也可以使用Xshell等软件,使用命令行来操作。2、环境介绍目前使用的环境:Linux:20.04Pycharm:2019专业版Windows:64位Anaconda:Python3.7一、添加并设置部署1、点击Pycharm工作栏上方“Tools->

  • 内部类(成员内部类、静态内部类、方法内部类)

    内部类(成员内部类、静态内部类、方法内部类)一:成员内部类:最常见的内部类就是成员内部类,也称作普通内部类;1、Inner类定义在Outer类的内部,相当于Outer类的成员变量的位置,Inner类可以使用任意访问修饰符,如:public、private、protected等。2、Inner类中定义的test()方法可以访问Outer类中的数据,不受访问控制符的影响。3、定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去……

    2022年10月11日
  • python3中for循环的用法_Python3 for循环语句

    python3中for循环的用法_Python3 for循环语句语法foriterating_varinsequence:statements(s)如果一个序列中包含一个表达式列表时,它需要首先计算。然后,序列中的第一项被分配给所述迭代变量iterating_var,接下来,语句块被执行。列表中的每一项都被分配到iterating_var,并执行语句(statement)块,直到整个序列完成。流程图range()函数内置函数range()是迭代…

发表回复

您的电子邮箱地址不会被公开。

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