FlowLayoutPanel控件
来源:互联网 发布:数控编程工资月薪过万 编辑:程序博客网 时间:2024/06/18 09:41
最近用到了FlowLayoutPanel控件。感觉功能很强大~
整理记录如下:
msdn的描述是这样的:FlowLayoutPanel控件沿着水平或垂直流方向排列其内容。其内容可以从一行换到下一行。或者,还可以对它的内容进行剪裁,而不是进行换行。
可以通过设置FlowDirection 属性的值来指定流向。在从右向左(RTL)的布局中,FlowLayoutPanel 控件会相应地反转其流向。还可以通过设置WrapContents 属性来指定是对FlowLayoutPanel 控件的内容进行换行还是裁剪。
任何Windows窗体控件(包括FlowLayoutPanel 的其他实例)都可以是FlowLayoutPanel 控件的子级。使用此功能,可以构造在运行时能够根据窗体的尺寸进行相应调整的复杂布局。
子控件的停靠和锚定行为不同于其他容器控件中的行为。停靠和锚定都是相对于流方向上的最大控件而言的。
FlowLayoutPanel 是流式布局面板。可以实现动态的添加控件,实现响应式的布局排版。
①向FlowLayoutPanel 中添加控件
- Dim picBox As PictureBox = New PictureBox
- picBox.Image = Image.FromFile("C:\abc.bmp")
- picBox.Name = N1
- picBox.SizeMode = PictureBoxSizeMode.AutoSize
- FlowLayoutPanel1.Controls.Add(picBox)
- FlowLayoutPanel1.SetFlowBreak(picBox, True)
- Dim labelN As Label = New Label
- labelN.Text = ""
- labelN.Height = 30
- labelN.Width = 120
- labelN.TextAlign = ContentAlignment.MiddleLeft
- labelN.Name = "labelN"
- labelN.ForeColor = Color.Black
- FlowLayoutPanel1.Controls.Add(labelN)
- FlowLayoutPanel1.SetFlowBreak(picBox, True)
是中断流进行换行。
添加label ,且label的text为空,设置label的宽高,是为了对控件进行排版。对齐显示。
②为子控件绑定事件
- Dim buttonN As Button = New Button
- buttonN.Name = "Q_ButtonN"
- buttonN.BackColor = Color.Red
- buttonN.Text = "XXXXXXXX"
- buttonN.Width = 55
- AddHandler buttonN.Click, AddressOf pic_DClick
- FlowLayoutPanel1.Controls.Add(buttonN)
- FlowLayoutPanel1.SetFlowBreak(buttonN, True)
点击FlowLayoutPanel中添加的buttonN控件的事件
- Private Sub pic_DClick(sender As Object, e As EventArgs)
- For i = 1 To Me.FlowLayoutPanel1.Controls.Count - 1
- If Me.FlowLayoutPanel1.Controls(i).Name = "Q_ButtonN2" Then
- Me.FlowLayoutPanel1.Controls(i).BackColor = Color.Gainsboro
- End If
- Next
- End Sub
通过遍历Me.FlowLayoutPanel1.Controls(i),可以在添加的众多控件中找到你想要的。
FlowLayoutPanel控件不直接支持MouseWheel事件,即滚动滚轮也不会有响应。
我通过在FlowLayoutPanel 的子控件中添加焦点,来实现滚轮滚动
- buttonN.Focus()
参考于http://blog.csdn.net/u013162930/article/details/48316613
- FlowLayoutPanel控件
- FlowLayoutPanel控件
- FlowLayoutPanel控件学习
- 控件FlowLayoutPanel异步使用
- 被埋没的控件:FlowLayoutPanel
- FlowLayoutPanel控件动态加载radiobutton
- 对FlowLayoutPanel里面的控件进行排序
- FlowLayoutPanel内用户控件通过上下移动进行顺序调整
- C#Winform动态调整FlowLayoutPanel的控件中位置
- C# WinForm 使用FlowLayoutPanel控件做为导航菜单按钮的容器
- 如何让FlowLayoutPanel容器里面的【子控件】随着容器(宽度)发送改变而发送改变?
- FlowLayoutPanel和Panel
- flowlayoutpanel 显示vertical scroll
- flowLayoutPanel滚动条
- WinForm"tableLayoutPanel和flowLayoutPanel的使用"
- C# Winform FlowLayoutPanel禁止横向增长
- C# WinForm TableLayoutPanel和FlowLayoutPanel闪烁的解决方案
- WinForm"tableLayoutPanel和flowLayoutPanel的使用(附源码示例)" 之配餐系统的开发
- 我的第一篇博客
- mysql事件调度器
- 第一篇博客:关于学堂在线的操作系统实验准备工作
- Hibernate.util
- 搜索引擎java实战
- FlowLayoutPanel控件
- NSCoding协议
- Linux2.6.32驱动笔记(2)字符设备驱动编程模型
- Dedecms中列表页缩略图怎么大小控制
- Mac下通过Homebrew安装配置MySQL
- android下访问已存在的sqlite数据库文件的办法
- IEulerRK
- GNU/GCC/G++ 编译/链接生成的常见段(section)表
- 正则表达式