刷新网格的特定单元格而不加载整个网格视图

时间:2012-05-31 11:11:09

标签: c# asp.net .net gridview refresh

有没有办法刷新网格视图的单元格而不刷新c#asp.net中的整个网格视图

3 个答案:

答案 0 :(得分:1)

您可以使用模板字段,在其中放置一个UpdatePanel并以此方式刷新该单个单元格。你只需要一些方法来启动刷新。

答案 1 :(得分:0)

您可能必须在单元格中使用嵌套的UpdatePanel。

答案 2 :(得分:0)

如果您不想在GridView中的每个单元格中放置UpdatePanel,则可以在常规的完整回发中刷新单元格。网格的内容将被四舍五入,但您的数据源不一定会被完整查询。

首先,确保您的网格不会在每次回发时重新绑定,例如将gv.DataSource = x; gv.DataBind();包裹在if (!this.IsPostBack)内。

然后你应该能够按照

的方式做点什么
((Label)gv.Rows[x].Cells[y].FindControl('myLabel')).Text =
    GetDataItemNumber(x).FieldForColumnY.ToString();

请注意,gv.Rows[x]可能与数据源中的x项不对应,因为Rows包含标题行等。您可能需要遍历Rows检查例如用于查找正确行的ID。

免责声明:我之前从未实际完成,但它应该是可能的......