【问题标题】:ASP.NET Extending the gridview to Show a navigation bar at underneath the gridview?ASP.NET 扩展网格视图以在网格视图下方显示导航栏?
【发布时间】:2011-05-11 12:50:06
【问题描述】:

我开发了一个 asp.net 控件,它继承自 gridview 及其称为 gridviewex...我需要一些页面导航内容来在它下面呈现一些我正在实施的自定义分页.. 一切顺利,但我可以' t 似乎向控件添加新控件..

例如,我想做的是在网格下方添加一个 asp.net 面板,然后将链接按钮添加到面板中。

到目前为止我有这个,但它给出了一个错误

  Unable to cast object of type 'System.Web.UI.WebControls.Panel' to type 
  'System.Web.UI.WebControls.Table'.

代码..

    protected override void OnPreRender(EventArgs e)
    {
        base.OnPreRender(e);

        Panel uxGridViewNavigation = new Panel();

        LinkButton linkButton = null;

        linkButton = new LinkButton();
        linkButton.Text = "First";
        linkButton.Click += new EventHandler(linkButton_Click);

        uxGridViewNavigation.Controls.Add(linkButton);

        this.Controls.Add(uxGridViewNavigation);

     }

我非常感谢任何帮助。这是我的第一个服务器控制扩展 :-)

谢谢

【问题讨论】:

  • 我从来没有做过服务器控件扩展,但是您是否尝试过使用 GridView 的 ShowFooter 属性,然后将控件添加到最后一行(即页脚行)?
  • 谢谢马修,但我真的需要扩展它......因为我也需要用它做更多的事情:-)

标签: asp.net gridview asp.net-2.0 servercontrols


【解决方案1】:

覆盖Render 喜欢:

override Render(HtmlTextWriter writer)
{
    // outputs all the inner magic of your grid
    base.Render(writer);

    Panel panel = new Panel();
    // do magic

    // now also render the panel to the writer
    panel.RenderControl(writer);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 2020-09-28
    • 2017-12-05
    相关资源
    最近更新 更多