winform中,让人困惑的调整datagrid列宽的问题

menganafff 2009-01-06 02:00:15
我检索了一下,网上普通采用这种方法:
1、新建立一个 DataGridTableStyle
DataGridTableStyle dtstyle= new DataGridTableStyle();
2、绑定数据源
dtstyle.MappingName=TableName;
3、设定
dg.TableStyles.Clear();
dg.TableStyles.Add(dtstyle);
dg.TableStyles[TableName].GridColumnStyles[ColumnName].Width=200;


可是我程序中是这样来绑定datagrid的,这种方式不能改,否则改动太大:dataGrid_user.DataSource=dt;
dt是我通过写好的一个类来执行sql语句取到的DataTable,绑定和取记录集只有这一句,那这样的话,我怎么来应用上面的改变列宽的方法呢?

TableName是什么?用我的程序中的什么来代替?ColumnName又用什么来代替?着急!谢谢大家!
改变一个列宽竟要这样的麻烦!
...全文
111 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
menganafff 2009-01-06
  • 打赏
  • 举报
回复
搞定了,谢谢byhum,谢谢大家
byhum 2009-01-06
  • 打赏
  • 举报
回复
TableName是什么?用我的程序中的什么来代替?ColumnName又用什么来代替?着急!谢谢大家!

--------------------------------------
TableName就是你的dt.TableName,ColumnName应该就是你的SQL查询语句中的字段名,因为你的绑定很简单,没有另外规定列名,所以应该就是字段名。
menganafff 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jietuan 的回复:]
或者你在design的时候,创建好datagrid 的style
[/Quote]


能说的具体点吗?不明白
menganafff 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jietuan 的回复:]
你设置dtstyle 的datasource 为dt看看
[/Quote]


dtstyle 哪有datasource 这个属性啊
menganafff 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 nj_1st_excellence 的回复:]
DataTable dt = new DataTable();
dt.Columns.Add("NAME", typeof(string));
dt.Columns.Add("ADDRESS", typeof(string));

dt.Rows.Add("aaaaaaaaaaaa", "AAAAAAAAAAAAAAAAAAAAAAAA");
dt.Rows.Add("bbbbbbbbbb", "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB");

dataGridView1.DataSource = dt;
dataGridView1.Columns[0].MinimumWi…
[/Quote]


是datagrid
journeydj 2009-01-06
  • 打赏
  • 举报
回复
winform只用过datagirdview,没用过datagird。帮顶一下吧。
jietuan 2009-01-06
  • 打赏
  • 举报
回复
或者你在design的时候,创建好datagrid 的style
jietuan 2009-01-06
  • 打赏
  • 举报
回复
你设置dtstyle 的datasource 为dt看看
wengjj1985 2009-01-06
  • 打赏
  • 举报
回复
应该是datagrid不是datagridview吧
nj_1st_excellence 2009-01-06
  • 打赏
  • 举报
回复
DataTable dt = new DataTable();
dt.Columns.Add("NAME", typeof(string));
dt.Columns.Add("ADDRESS", typeof(string));

dt.Rows.Add("aaaaaaaaaaaa", "AAAAAAAAAAAAAAAAAAAAAAAA");
dt.Rows.Add("bbbbbbbbbb", "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB");

dataGridView1.DataSource = dt;
dataGridView1.Columns[0].MinimumWidth = 400;
dataGridView1.Columns[1].MinimumWidth = 400;

这样就可以了,我刚试的
menganafff 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lsj_zrp 的回复:]
如果是datagirdview的话
this.datagirdview.columns[0].width=200;
[/Quote]

是datagrid
menganafff 2009-01-06
  • 打赏
  • 举报
回复
谁帮帮忙啊
lsj_zrp 2009-01-06
  • 打赏
  • 举报
回复
如果是datagirdview的话
this.datagirdview.columns[0].width=200;

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧