PAIP.从DATATABLE动态生成表头
来源:互联网 发布:淘宝店引流量方法 编辑:程序博客网 时间:2024/06/06 04:57
PAIP.从DATATABLE动态生成表头
有时候,从数据库中得到的datatable列太多了,一一绑定到界面上的GRID太麻烦了,可以动态绑定..
/*
* 从数据库生成的DATABLE列名为textbox1,textbox2,......
* title为汉字表头,顺序与 datable 的列后缀(textboxids )顺序一一对应
*/
int startAutoColumnPosition = 5; //自动生成列开始位置..前边可以自定义固定列.
string prefix = "textbox"; //databable里边列名前缀
private void usermain_Load(object sender, EventArgs e)
{
DataTable dt = rec.query();
this.dataGridView1.DataSource = dt;
//表格标头
string title="比例,单重,供货时间,备注,合计(KG),最低重量,筋条数,送货时间1,合格数量1,重量1,结算单重1,送货时间2,合格数量2,重量2,结算单重2,送货时间3,合格数量3,重量3,结
算单重3,送货时间4,合格数量4,重量4,结算单重4,送货时间5,,合格数量5,重量5,结算单重5,送货时间6,合格数量6,重量6,结算单重6,送货时间7,,合格数量7,重量7,结算单重7,送货时间8,合格数量8,重
量8,结算单重8,送货时间9,,合格数量9,重量9,结算单重9,送货时间10,合格数量10,重量10,结算单重10";
//datable column 后缀
string textboxids = "7,8,9,10,11,12,19,18,17,16,14,15,13,26,25, 24,23,21,22,20,55,57,56 ,48,33,29,32, 27,31,28,30, 41,40,36,39,34,38,35,37, 50,49,44,47,42,46,43,45";
setTitleOnDataView(title, textboxids);
}
private void setTitleOnDataView(string title, string textboxids)
{
int ori=startAutoColumnPosition;
//循环生成表头.HeaderText
foreach (DataGridViewTextBoxColumn item in this.dataGridView1.Columns)
{
String tltle=setColumnHeaderText(item.DataPropertyName, title, textboxids);
if(!tltle.Equals("null"))
{
item.HeaderText = tltle;
item.DisplayIndex=ori+2;
}
startAutoColumnPosition++;
}
//把不需要显示的列头,设置为隐藏
foreach (DataGridViewTextBoxColumn item in this.dataGridView1.Columns)
{
if (item.HeaderText.ToLower().StartsWith("text"))
item.Visible = false;
}
}
//get ColumnHeaderText
private string setColumnHeaderText(string DataPropertyName, string title, string textboxids)
{
string r = "";
string[] ides = textboxids.Split(",".ToCharArray());
string[] titlesArr = title.Split(",".ToCharArray());
int i=0;
foreach (string item in ides)
{
string id = prefix + item;
if(id.Equals(DataPropertyName.ToLower()))
{
return titlesArr[i];
}
i++;
}
return "null";
}
- PAIP.从DATATABLE动态生成表头
- JSF: 动态生成的DataTable, 固定表头, 固定行标,
- JSF: 动态生成的DataTable, 固定表头, 固定行标
- easyui 表头动态生成
- Extjs动态生成表头
- easyui 表头动态生成
- bootstrapTable 动态表头生成
- gridview动态生成表头、合并表头
- 动态生成DataTable
- 动态生成DataTable
- 动态生成DataTable
- 动态生成DataTable
- 动态生成表DataTable
- UltraWebGrid动态生成多表头
- Flex中动态生成表头
- extjs4动态生成多表头
- flex复杂表头动态生成
- 动态生成HTMLTable,table,DataTable
- android kernel 启动以后怎么挂载文件系统, init.rc怎么启动服务开启脚
- linux 基础知识总结
- initramfs 深入理解, 以及initramfs与initrd的区别
- 很简单的js下拉框联动
- NoSQL数据库
- PAIP.从DATATABLE动态生成表头
- BCM4330 Android OS Wireless Develop
- android sensors整个流程
- Android下的Wifi (上层流程)
- C++之名字隐藏
- Android 中的WiFi学习笔记——经典
- 高通MSM8255 GPS 调试分析
- Subversion服务器搭建 (安装步骤)
- SVN