GridView控件太强大了。对于想要在一页上显示多条数据非常有用。
1、展示数据
可以用Linq 获得数据库中的数据,绑定到GridView上面;
var result2 = lqDB.cmdb_solution.Select(r => new { r.userid, r.paper_prob_id, r.CompileInfor, r.login_time }).OrderByDescending(r => r.login_time);
GridView1.DataSource = result2;
GridView1.DataBind();
2、分页
如果是直接设置GridView的数据源,则其会自动分页。
若是通过Linq等得到的数据,还需要实现GridView的一个事件
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
3、为GridView添加列
可以添加选择、删除、编辑按钮,可以直接在上面编辑并保存。
也可以添加自己的按钮。
4、可以通过模板更改每一项的显示模式
5、可以通过响应事件获得点击的行号,再通过行、列号获得Grid中内容
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
int index = e.NewSelectedIndex;//获得点击的行号
//获得试题号
string dbID = GridView1.Rows[index].Cells[3].Text;//获得单元格内容,需要知道行号和列号
Session["dbID"] = dbID;
Response.Redirect("SingleProb.aspx");
}