获取gridControl主从表中子表的数据

挑食的小孩 2014-07-30 03:35:36
在gridControl中,我用两个gridView绑定了主从表关系,然后在子表的每行最后一列都有一个按钮,我想实现的效果是,当我点击子表中的按钮时,获取点击行的数据!
...全文
460 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2014-07-30
  • 打赏
  • 举报
回复
引用 7 楼 ydl802 的回复:
[quote=引用 6 楼 duanzi_peng 的回复:] [quote=引用 5 楼 ydl802 的回复:] [quote=引用 4 楼 duanzi_peng 的回复:] [quote=引用 3 楼 ydl802 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?[/quote] 这你只能打个断点 ,看gridview2的dataSource是不是为空了。[/quote] 我通过这种方式来绑定gridControl的数据源的[/quote] 没用sql语句绑定多。用的dataset, 参见: https://documentation.devexpress.com/#WindowsForms/CustomDocument2163[/quote] 如果用链接地址上的做法的话,可以自定义列头的显示格式吗(可以显示中文吗)[/quote] 可以,用CustomDrawColumnHeader事件。

 e.Appearance.DrawString(e.Cache, "header", e.Info.CaptionRect);
            e.Handled = true;
挑食的小孩 2014-07-30
  • 打赏
  • 举报
回复
引用 6 楼 duanzi_peng 的回复:
[quote=引用 5 楼 ydl802 的回复:] [quote=引用 4 楼 duanzi_peng 的回复:] [quote=引用 3 楼 ydl802 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?[/quote] 这你只能打个断点 ,看gridview2的dataSource是不是为空了。[/quote] 我通过这种方式来绑定gridControl的数据源的[/quote] 没用sql语句绑定多。用的dataset, 参见: https://documentation.devexpress.com/#WindowsForms/CustomDocument2163[/quote] 如果用链接地址上的做法的话,可以自定义列头的显示格式吗(可以显示中文吗)
exception92 2014-07-30
  • 打赏
  • 举报
回复
引用 5 楼 ydl802 的回复:
[quote=引用 4 楼 duanzi_peng 的回复:] [quote=引用 3 楼 ydl802 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?[/quote] 这你只能打个断点 ,看gridview2的dataSource是不是为空了。[/quote] 我通过这种方式来绑定gridControl的数据源的[/quote] 没用sql语句绑定多。用的dataset, 参见: https://documentation.devexpress.com/#WindowsForms/CustomDocument2163
挑食的小孩 2014-07-30
  • 打赏
  • 举报
回复
引用 4 楼 duanzi_peng 的回复:
[quote=引用 3 楼 ydl802 的回复:]
[quote=引用 1 楼 duanzi_peng 的回复:]
子表 指定了DataSource了吧??
在RowCellClick事件中,

private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
{
if (e.Column.VisibleIndex == 2) // 按钮列
{
GridView view = sender as GridView;
var selDate = view.GetRow(e.RowHandle);
}
}

selDate 就是你的实体对象。


我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?[/quote]
这你只能打个断点 ,看gridview2的dataSource是不是为空了。[/quote]

我通过这种方式来绑定gridControl的数据源的
exception92 2014-07-30
  • 打赏
  • 举报
回复
引用 3 楼 ydl802 的回复:
[quote=引用 1 楼 duanzi_peng 的回复:] 子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?[/quote] 这你只能打个断点 ,看gridview2的dataSource是不是为空了。
挑食的小孩 2014-07-30
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
我发现刚窗体加载时我就去绑定了主从表,可是绑定好主从表后,我去查询子表的行数,弹出来是0,这是不是说子表的数据根本就没有绑定到子表的gridView2中呢?
exception92 2014-07-30
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。
最好是判断一下 view 不为null
exception92 2014-07-30
  • 打赏
  • 举报
回复
子表 指定了DataSource了吧?? 在RowCellClick事件中,

 private void gv_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (e.Column.VisibleIndex == 2)  // 按钮列
            {
                GridView view = sender as GridView;
                var selDate = view.GetRow(e.RowHandle);
            }
        }
selDate 就是你的实体对象。

110,533

社区成员

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

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

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