C#中DataGridView和实体层绑定顺序乱的问题

zhouenya 2009-12-26 04:31:08
用实体类泛型保存数据库里查出来的数据,再用DataGridView绑定泛型集合,显示出来的数据的顺序,能不能调整的?



DataGridView1.DataSource=list

绑定数据,但是显示出来的结果,顺序是乱的,有办法调整么?请高人赐教!
...全文
167 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
king4323210 2009-12-26
  • 打赏
  • 举报
回复
何必!
不用去想那个问题!
控件本身就有排序的功能!
ginni215 2009-12-26
  • 打赏
  • 举报
回复
如果DataGridView1有添加列的话,绑定数据后,加AutoGenerateColumns=false
如果没有添加列的话,好像是按照实体类的字母顺序来排的吧
sabty 2009-12-26
  • 打赏
  • 举报
回复
你好!

是可以的,你可以使用 BindingSource 进行数据源的绑定。通过设置 BindingSource 的 Sort 属性进行排序。
zhouenya 2009-12-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 sp1234 的回复:]
检查你的list是不是排好序的。如果不是,去找你从他那里抄list来的人去评理去。

你没有说list如何来的,谁知道如何排序?
[/Quote]

List<Board> boards = new List<Board>();
private void Form1_Load(object sender, EventArgs e)
{
string connString = "Data Source=.\\sql2005;Initial Catalog=bbs;User ID=sa;Pwd=sql2005";
SqlConnection conn = new SqlConnection(connString);
string sql = "select * from tbl_board";
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Board board = new Board();
board.BoardId = Convert.ToInt32(reader[0]);
board.BoardName = reader[1].ToString();
board.ParentId = Convert.ToInt32(reader[2]);
boards.Add(board);
}
conn.Close();
dataGridView1.DataSource = boards;
}
  • 打赏
  • 举报
回复
通常,对于“从数据库中查出来的数据”,查询时在数据库端即排序(发送到数据库的命令就是指引排序的),并且只应该读取一页内容而不是表中全部数据到内存。
  • 打赏
  • 举报
回复
检查你的list是不是排好序的。如果不是,去找你从他那里抄list来的人去评理去。

你没有说list如何来的,谁知道如何排序?
zhouenya 2009-12-26
  • 打赏
  • 举报
回复
能试的都试过了,你是指调用哪个方法呢?[Quote=引用 1 楼 songhtao 的回复:]
list应该可以排序的。
[/Quote]
zhouenya 2009-12-26
  • 打赏
  • 举报
回复
没有人知道么
我不懂电脑 2009-12-26
  • 打赏
  • 举报
回复
list应该可以排序的。

111,120

社区成员

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

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

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