Share via


WebPartZoneBase.LayoutOrientation Propriedade

Definição

Obtém ou define um valor que indica se os controles em uma zona estão dispostos vertical ou horizontalmente.

public:
 virtual property System::Web::UI::WebControls::Orientation LayoutOrientation { System::Web::UI::WebControls::Orientation get(); void set(System::Web::UI::WebControls::Orientation value); };
public virtual System.Web.UI.WebControls.Orientation LayoutOrientation { get; set; }
member this.LayoutOrientation : System.Web.UI.WebControls.Orientation with get, set
Public Overridable Property LayoutOrientation As Orientation

Valor da propriedade

Orientation

Um Orientation valor que determina como os controles em uma zona são organizados. A orientação padrão é Vertical.

Exceções

O valor não é um dos valores Orientation enumerados.

Exemplos

O exemplo de código a seguir demonstra o uso declarativo e programático da LayoutOrientation propriedade em um WebPartZone controle. Para obter o exemplo de código completo, incluindo o arquivo de origem code-behind e a página .aspx que contém a zona nesse código, consulte a visão geral da WebPartZoneBase classe.

Observe que a LayoutOrientation propriedade tem um valor atribuído a ela na marcação declarativa. Esse valor afeta WebPartZone1, depois de carregar a página em um navegador. Os controles Web Parts na zona são renderizados horizontalmente.

<asp:WebPartZone 
  ID="WebPartZone1" 
  Runat="server"
  LayoutOrientation="Vertical" >
  <EditVerb Text="Edit WebPart" />
  <SelectedPartChromeStyle BackColor="LightBlue" />
  <ZoneTemplate>
    <asp:BulletedList 
      ID="BulletedList1" 
      Runat="server"
      DisplayMode="HyperLink" 
      Title="Favorite Links" >
      <asp:ListItem Value="http://msdn.microsoft.com">
        MSDN
      </asp:ListItem>
      <asp:ListItem Value="http://www.asp.net">
        ASP.NET
      </asp:ListItem>
      <asp:ListItem Value="http://www.msn.com">
        MSN
      </asp:ListItem>
    </asp:BulletedList>
    <asp:Calendar ID="Calendar1" Runat="server" 
      Title="My Calendar" />
  </ZoneTemplate>
</asp:WebPartZone>
<asp:WebPartZone 
  ID="WebPartZone1" 
  Runat="server"
  LayoutOrientation="Vertical" >
  <EditVerb Text="Edit WebPart" />
  <SelectedPartChromeStyle BackColor="LightBlue" />
  <ZoneTemplate>
    <asp:BulletedList 
      ID="BulletedList1" 
      Runat="server"
      DisplayMode="HyperLink" 
      Title="Favorite Links" >
      <asp:ListItem Value="http://msdn.microsoft.com">
        MSDN
      </asp:ListItem>
      <asp:ListItem Value="http://www.asp.net">
        ASP.NET
      </asp:ListItem>
      <asp:ListItem Value="http://www.msn.com">
        MSN
      </asp:ListItem>
    </asp:BulletedList>
    <asp:Calendar ID="Calendar1" Runat="server" 
      Title="My Calendar" />
  </ZoneTemplate>
</asp:WebPartZone>

Você pode clicar no botão Alternar Orientação de Layout para alterar a orientação da zona. O código para alternar a orientação ocorre no exemplo de código a seguir da classe parcial.

protected void Button2_Click(object sender, EventArgs e)
{
  if (WebPartZone1.LayoutOrientation == Orientation.Vertical)
    WebPartZone1.LayoutOrientation = Orientation.Horizontal;
  else
    WebPartZone1.LayoutOrientation = Orientation.Vertical;
  Page_Load(sender, e);
}
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs) 
  If WebPartZone1.LayoutOrientation = Orientation.Vertical Then
      WebPartZone1.LayoutOrientation = Orientation.Horizontal
  Else
      WebPartZone1.LayoutOrientation = Orientation.Vertical
  End If
  Page_Load(sender, e)
End Sub

Comentários

A LayoutOrientation propriedade diz respeito à forma como os controles Web Parts são dispostos em uma zona. Com a orientação padrão Vertical , os controles são renderizados em uma disposição de cima para baixo, de acordo com o ZoneIndex valor de cada controle. Com uma Horizontal orientação, os controles são organizados lado a lado, sujeitos à largura da zona.

O Internet Explorer pode afetar a altura de um WebPart controle e a altura da zona que o contém. O Internet Explorer renderiza páginas da Web no modo de compatibilidade (compatível com versões anteriores do navegador) ou no modo de padrões (determinado pela presença de uma DOCTYPE declaração na página). Para obter informações sobre esses modos, consulte a propriedade DHTML compatMode . Quando o Internet Explorer renderiza uma página no modo de padrões, em alguns cenários ela não redimensiona células em tabelas, mesmo quando a marcação HTML de uma célula é <td height="100%">. Como resultado, WebPart os controles e sua zona de contenção são renderizados para que os controles não se estendam até a altura total da zona.

Esse tipo de renderização ocorre em dois casos.

  • Quando a propriedade de LayoutOrientation uma zona é definida como Vertical, e você define explicitamente a altura na zona. Para permitir que os controles preencham a altura total da zona, não especifique a altura de uma zona horizontal.

  • Quando a propriedade de LayoutOrientation uma zona é definida como Horizontal, e você não define explicitamente a altura da zona (ou dos controles contidos). Para permitir que os controles preencham a altura total da zona, defina a altura da zona ou dos controles em uma zona vertical.

O exemplo de código neste tópico demonstra o uso normal da LayoutOrientation propriedade. Para obter um exemplo de código que demonstra o problema de renderização relacionado à altura e como contornar isso, consulte a Height propriedade.

Aplica-se a

Confira também