这是我的情景:
许多用户控件,每个用户控件都包含许多网格视图。
我希望通过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中定义的网格完全相同的网格。
答案 0 :(得分:0)
您应该使用<asp:UpdatePanel>
。