通过AJAX加载asp.net控件

时间:2011-11-24 16:19:07

标签: ajax user-controls

这是我的情景:

许多用户控件,每个用户控件都包含许多网格视图。

我希望通过ajax调用(重新)加载单个gridview,以摆脱回发并提高性能和用户体验。
我不想重写大量的代码,所以我只想渲染那个单一控件的单个gridview。
<br/> 这意味着如果gridview显示4个字段并且它具有绑定的服务器方法,则必须从.ascx.cs和.ascx中选择规则执行。

我无法创建gridview的新实例,因为我需要根据.ascx规则创建它。

我使用这段代码创建网格并将其放入文本编写者。

System.Web.UI.WebControls.GridView grid = new System.Web.UI.WebControls.GridView();

StringBuilder sb = new StringBuilder();
using (StringWriter sw = new StringWriter(sb))
{
    using (HtmlTextWriter textWriter = new HtmlTextWriter(sw))
    {
        grid.DataSource = ds;
        grid.DataBind();
        grid.RenderControl(textWriter);
    }
}

它像预期的那样像普通网格一样出现。但我不需要这个;我需要生成一个与.ascx中定义的网格完全相同的网格。

1 个答案:

答案 0 :(得分:0)

您应该使用<asp:UpdatePanel>