c# dev express 表格控件gridControl,直接看不到数据,表示己疯!大神帮忙支招吧

qq_33331801 2015-12-30 03:54:34
在用表格控件的时候,一定要双击那个三角形才能显示出来明细。找了一下午了都没有找到相关的设置属性。

图片传不上来,我描述一下吧:
我用了一个dataset的结果给表格控件做源:gridControl1.DataSource = ds;
运行后,表格控件里面有数据,但不会直接显示出来,而是在表格控件左上角有一个黑色的三角形,需要双击三角形才能看得到表格的数据。
网上看各种贴子,好像没有这方面的问题!汗,,,
...全文
624 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
my_life_go 2016-09-07
  • 打赏
  • 举报
回复
代码应该是这样的吧dgvProtInfo1.DataSource = ds.Tabale[0]就不会出现三角形点击才会出来的
qq_33331801 2016-01-06
  • 打赏
  • 举报
回复
引用 9 楼 abz7676 的回复:
[quote=引用 8 楼 abz7676 的回复:] [quote=引用 6 楼 qq_33331801 的回复:] 我写的这个很简单的,就是一个sql查询命令,得到一个dataset的结果集,把结果集做为表格的数据源。 DataSet ds = null; protinfo.M_str_ProtID = txtProtID.Text; ds = baseinfo.GetProtInfoWithProtID(protinfo); if (ds.Tables[0].Rows.Count > 0) { dgvProtInfo1.DataSource = ds; } 运行代码后,dgvProtinfo1这个就是表格控件,里面有数据,但就是要双击一个左上角的三角形才能显示出来,表格控件直接从工具箱拉出来的没有改过参数。
试试将 if (ds.Tables[0].Rows.Count > 0) 改成 if (ds.Rows.Count > 0) ?[/quote] 抱歉,写错了。 我觉得最好将ds转换为dt(DataTable)吧 这样比较方便 比如 if (dt.Rows.Count > 0) [/quote] 对的正确,gridControl1.DataSource针对表而非dataset
qq_33331801 2016-01-06
  • 打赏
  • 举报
回复
引用 4 楼 u013899077 的回复:
试试DataTable呢, DataTable dt = ds.Tables[0]
这个方法是对的。 因为一个dataset里面有很多个表,所以表格控件也不知道是显示哪一个表,所以双击后看到数据,是因为它直接显示主视图了。 汗,就这么这个问题,折腾的。 我正确的表达方式应该是:gridControl1.DataSource=ds1.tables[表名]; 而非简单的gridControl1.DataSource= ds1. 感谢各位的解答。
qq_33331801 2015-12-31
  • 打赏
  • 举报
回复
我写的这个很简单的,就是一个sql查询命令,得到一个dataset的结果集,把结果集做为表格的数据源。
DataSet ds = null;
protinfo.M_str_ProtID = txtProtID.Text;
ds = baseinfo.GetProtInfoWithProtID(protinfo);
if (ds.Tables[0].Rows.Count > 0)
{
dgvProtInfo1.DataSource = ds;
}
运行代码后,dgvProtinfo1这个就是表格控件,里面有数据,但就是要双击一个左上角的三角形才能显示出来,表格控件直接从工具箱拉出来的没有改过参数。
xuliangone1 2015-12-31
  • 打赏
  • 举报
回复
是不是绑定数据源以后 没有刷新呢
abz7676 2015-12-31
  • 打赏
  • 举报
回复
引用 8 楼 abz7676 的回复:
[quote=引用 6 楼 qq_33331801 的回复:] 我写的这个很简单的,就是一个sql查询命令,得到一个dataset的结果集,把结果集做为表格的数据源。 DataSet ds = null; protinfo.M_str_ProtID = txtProtID.Text; ds = baseinfo.GetProtInfoWithProtID(protinfo); if (ds.Tables[0].Rows.Count > 0) { dgvProtInfo1.DataSource = ds; } 运行代码后,dgvProtinfo1这个就是表格控件,里面有数据,但就是要双击一个左上角的三角形才能显示出来,表格控件直接从工具箱拉出来的没有改过参数。
试试将 if (ds.Tables[0].Rows.Count > 0) 改成 if (ds.Rows.Count > 0) ?[/quote] 抱歉,写错了。 我觉得最好将ds转换为dt(DataTable)吧 这样比较方便 比如 if (dt.Rows.Count > 0)
abz7676 2015-12-31
  • 打赏
  • 举报
回复
引用 6 楼 qq_33331801 的回复:
我写的这个很简单的,就是一个sql查询命令,得到一个dataset的结果集,把结果集做为表格的数据源。 DataSet ds = null; protinfo.M_str_ProtID = txtProtID.Text; ds = baseinfo.GetProtInfoWithProtID(protinfo); if (ds.Tables[0].Rows.Count > 0) { dgvProtInfo1.DataSource = ds; } 运行代码后,dgvProtinfo1这个就是表格控件,里面有数据,但就是要双击一个左上角的三角形才能显示出来,表格控件直接从工具箱拉出来的没有改过参数。
试试将 if (ds.Tables[0].Rows.Count > 0) 改成 if (ds.Rows.Count > 0) ?
XD-1 2015-12-30
  • 打赏
  • 举报
回复
试试DataTable呢, DataTable dt = ds.Tables[0]
exception92 2015-12-30
  • 打赏
  • 举报
回复
夏天的枫 2015-12-30
  • 打赏
  • 举报
回复
上代码把

110,537

社区成员

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

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

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