Partilhar 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

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 neste 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 que você carrega a página em um navegador. Os controles de 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 a como os controles de 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 compatMode DHTML. Quando o Internet Explorer renderiza uma página no modo 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 Verticale você define explicitamente a altura na zona. Para permitir que os controles preencham a altura completa da zona, não especifique a altura de uma zona horizontal.

  • Quando a propriedade de LayoutOrientation uma zona é definida como Horizontale você não define explicitamente a altura da zona (ou dos controles contidos). Para permitir que os controles preencham a altura completa 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 contorná-lo, consulte a Height propriedade .

Aplica-se a

Confira também