WinForm"tableLayoutPanel和flowLayoutPanel的使用(附源码示例)" 之配餐系统的开发
来源:互联网 发布:网络物流管理系统 编辑:程序博客网 时间:2024/04/30 05:27
这篇文章主要跟大家分享下,在配餐系统的开发中,对tableLayoutPanel 和 flowLayoutPanel 控件的使用方法和技巧 ——后附上 测试demo, 相信需要的朋友下载看后能很快的知道其如何使用并实现一些效果和扩展应用!
tableLayoutPanel: 表格布局面板,适合以表格形式规则的动态添加(显示)控件。使用方法概述:1.将tableLayoutPanel 拖放到窗体指定区域 ——一般做些基本的设置 或添加行或列,其它的就需写代码来控制显示 2.代码:
a.
// 删除默认的行和列样式 tableLayoutPanel4.ColumnStyles.Clear(); tableLayoutPanel4.RowStyles.Clear();
——删除默认的行和列样式,避免影响表格整体显示的效果,使样式以默认或自定义的为准(注:tableLayoutPanel拖放到窗体,默认为两行两列, 默认添加的代码如下:
this.tableLayoutPanel5.ColumnCount = 2; this.tableLayoutPanel5.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); this.tableLayoutPanel5.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); this.tableLayoutPanel5.Location = new System.Drawing.Point(72, 82); this.tableLayoutPanel5.Name = "tableLayoutPanel5"; this.tableLayoutPanel5.RowCount = 2; this.tableLayoutPanel5.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); this.tableLayoutPanel5.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
)
b. 设置属性和添加控件到单元格
tableLayoutPanel4.AutoScroll = true; tableLayoutPanel4.BackColor = Color.White; tableLayoutPanel4.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single; tableLayoutPanel4.ColumnCount = 6; for (int i = 0; i < 26; i++) { // ——行和列的 样式 默认为auto //tableLayoutPanel4.ColumnStyles.Add(new ColumnStyle()); //tableLayoutPanel4.RowStyles.Add(new RowStyle()); Label lab = new Label(); lab.Text = "Label_" + i; lab.AutoSize = true; //通过Anchor 设置Label 列中居中 lab.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); tableLayoutPanel4.Controls.Add(lab); TextBox txtObj = new TextBox(); txtObj.Text = "TextBox_" + i; txtObj.Width = 70; tableLayoutPanel4.Controls.Add(txtObj); }
ok, 以上代码即可实现,6列 行数根据添加项(上面的 lab和txtObj可称之为单元格的项)的个数多少而自动转行 tableLayoutPanel4.Controls.Add()方法会将控件添加到当前行单元格的后面,如果是最后一列,则自动转到下一行。
测试效果:
flowLayoutPanel: 流式布局面板,直接看代码吧,就不多说了.
[tableLayoutPanel 和 flowLayoutPanel 控件的区别:tableLayoutPanel是根据是否是最后一列而转到下一行,更容易控制布局,适合做‘扫雷’、'五子棋'等网格类的布局显示控件;而flowLayoutPanel是根据当前行余下的宽度不足以放接下来的控件而转到下一行,如 下图,适用于不需要过多考虑布局的显示。]
想了解它们更多的应用,可浏览:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.tablelayoutpanel(VS.80).aspx
最后,补充说明一下,我也是第一次对这两个控件有比较实际的应用,对其只能算是有个大概的了解,有不对的地方,希望大家能给予指正,避免'误人子弟',呵呵...
- WinForm"tableLayoutPanel和flowLayoutPanel的使用(附源码示例)" 之配餐系统的开发
- WinForm"tableLayoutPanel和flowLayoutPanel的使用"
- WinForm"立体饼状图实现(附源码示例)" 之配餐系统的开发
- C# WinForm TableLayoutPanel和FlowLayoutPanel闪烁的解决方案
- WinForm"DataGridView单元格提示和相关应用" 之配餐系统的开发
- WinForm"搜索提示效果(不错的)实现" 之 配餐系统的开发
- C# winform的tableLayoutPanel 使用记录
- C#提升性能"数据库连接打开与关闭"经验分享(附:优化过的DBHelper类) 之配餐系统的开发
- C#提升性能"数据库连接打开与关闭"经验分享(附:优化过的DBHelper类) 之配餐系统的开发
- C#提升性能"数据库连接打开与关闭"经验分享(附:优化过的DBHelper类) 之配餐系统的开发
- C#提升性能"数据库连接打开与关闭"经验分享(附:优化过的DBHelper类) 之配餐系统的开发
- TableLayoutPanel的RowSpan和ColumnSpan的使用
- TableLayoutPanel控件的使用
- 如何使用DOTMSN开发简单的MSN机器人示例(附示例源码)
- 如何使用DOTMSN开发简单的MSN机器人示例(附示例源码)
- "窗体加载闪烁处理、无边框窗体的移动" 之 配餐系统的开发
- C# WinForm 使用FlowLayoutPanel控件做为导航菜单按钮的容器
- C# TableLayoutPanel控件的使用
- python学习~递归函数
- (整理)Ruby的基础知识
- 解决IE6双倍边距bug
- php数组转换js数组操作及json_encode应用
- git使用总结
- WinForm"tableLayoutPanel和flowLayoutPanel的使用(附源码示例)" 之配餐系统的开发
- Reflector使用详解
- oracle and postgresql join method
- 在Socket做服务器,在手机上用Http访问
- 2-SAT 理解与模板
- 基于hibernate的基本dao接口与实现 及 sql模糊查询特殊字符处理 及 struts 特殊字符在界面正常回显
- 一致性代码段和非一致性代码段
- 威客模式--第四类互联网新模式
- C语言野指针