qq_40404488 2017-11-07 08:20 采纳率: 0%
浏览 991

关于linq to sql的数据绑定到dataview中提取的问题

如题。
我用这样的方式给dataview绑定数据

 var list_s = db.Course
              .Where(item => item.CourseName.Contains(txtForSearch.Text))
              .Where(item => cboClass.SelectedIndex == 0 ? true : item.ClassID == Convert.ToInt32(cboClass.SelectedIndex))
              .Where(item => cboTerm.SelectedIndex == 0 ? true : item.TermID == Convert.ToInt32(cboTerm.SelectedIndex));
            //  .Where(item => item.StartTime.Value == Convert.ToDateTime(StartDT))
            //.Where(item => item.EndTime.Value == Convert.ToDateTime(EndDT))
            //.Select(item => new
            //{
            //    课程号 = item.Id,
            //    课程名 = item.CourseName,
            //    任课教师 = item.Teacher,
            //    上课地点 = item.ClassRoom
            //});
            var a = list_s.Select(item => item.Id);
            var list = list_s
                .Select(item => new
                {
                    课程号 = item.Id,
                    课程名 = item.CourseName,
                    任课教师 = item.Teacher,
                    上课地点 = item.ClassRoom
                });
            this.dgvShow.ItemsSource = list;

然后,当我在selectionchange事件中提取gridview信息的时候,得到的结果总是空。

以下是我gridview中提取数据的代码段。


                //DataGrid dg = dgvShow.SelectedItem as DataGrid;
               // var cell = dg.CurrentItem;



              //  DataRow id = dgvShow.SelectedItems[0] as DataRow;
                         Course course = dgvShow.CurrentItem as Course;
              int a = course.Id;  


我尝试了好几种方法啊,都失败了。
现在唯一成功的方法是 我将数据表直接赋给gridview的数据源。
这样可以得到选取行的Id信息,但是数据表里冗余的数据和一些有外键关系的表的显示都出了问题,希望大家帮帮我。

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-11-07 14:39
    关注

    看下list是否有数据,调试下。可以用list.ToList().Count()看下返回的是不是0

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器