【问题标题】:Refreshing a particular cell of a grid without loading entire grid view刷新网格的特定单元格而不加载整个网格视图
【发布时间】:2012-06-05 15:25:08
【问题描述】:

在c#asp.net中有什么方法可以在不刷新整个网格视图的情况下刷新网格视图的单元格

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      您可以使用模板字段,将 UpdatePanel 放入其中并以这种方式刷新单个单元格。您只需要某种方式来启动刷新。

      【讨论】:

        【解决方案3】:

        如果您不想在 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] 可能与数据源中的 xth 项目不对应,因为 Rows 包括标题行等。您可能需要遍历 Rows 检查例如用于查找正确行的 ID。

        免责声明:我以前从未真正这样做过,但这应该是可能的......

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多