ASP DetailsView, условно скрыть показ элементов управления и строки? - PullRequest
2 голосов
/ 30 марта 2009

Я условно скрываю / показываю панели в DetailsView ... Я также хочу скрыть / показать строку / поле DetailsView, в которой находится панель потому что в данный момент отображаются пустые строки, когда панели скрыты?

ASCX:

<asp:DetailsView>
<asp:TemplateField>
  <ItemTemplate>
    <asp:panel runat="server" ID="pnlHideShow" OnInit="OnInit_Panel">  
...

CodeBehind:

protected void OnInit_Panel(object sender, EventArgs e)
{
  Panel pnl = (Panel) sender;
  pnl.Visible = false;

  switch (pnl.ID)
  {
    default:
      break;
    case "pnlHideShow":
      pnl.Visible = (some condition); 
    //How to hide/show DetailsView item containing this panel? 
    break;
    ...
  }
  ...
}

Надеюсь, я не являюсь кандидатом на " хуже, чем неудача ";)

1 Ответ

4 голосов
/ 19 августа 2009

Что-то вроде:

pnl.Visible = (some condition);
pnl.Parent.Visible = true;  // you may have to go pnl.Parent.Parent.Parent.Visible... try stepping through debug
...