ASP.NET Расширение вида сетки для отображения панели навигации под видом сетки? - PullRequest
1 голос
/ 17 ноября 2010

Я разработал элемент управления asp.net, который наследуется от gridview и его называется gridviewex ... Мне нужны некоторые элементы навигации по страницам для рендеринга под ним для какой-то пользовательской подкачки, которую я реализую ... Все идет хорошо, но я могу ' Похоже, что новые элементы управления добавляются в элементы управления.

Например, что я хотел сделать, это добавить панель 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);

     }

Я бы очень признателен за любую помощь. Это мое первое расширение для управления сервером: -)

Спасибо

1 Ответ

2 голосов
/ 17 ноября 2010

Переопределить 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);
}
...