WebPart.Height Egenskap

Definition

Hämtar eller anger höjden på en zon.

public:
 virtual property System::Web::UI::WebControls::Unit Height { System::Web::UI::WebControls::Unit get(); void set(System::Web::UI::WebControls::Unit value); };
[System.Web.UI.WebControls.WebParts.Personalizable]
public override System.Web.UI.WebControls.Unit Height { get; set; }
[<System.Web.UI.WebControls.WebParts.Personalizable>]
member this.Height : System.Web.UI.WebControls.Unit with get, set
Public Overrides Property Height As Unit

Egenskapsvärde

Ett Unit objekt som anger höjden på en WebPartZone. Standardtypen för en Unit är bildpunkter, vilket anges av egenskapen Type .

Attribut

Exempel

I följande kodexempel visas återgivningsproblemet som påverkar höjden på WebPart kontrollerna i en WebPartZone. Om du vill visa det här problemet måste du köra sidan i Internet Explorer.

Observera att zonens orientering är inställd på vågrät och att höjden på zonen och kontrollerna i den inte anges uttryckligen. Resultatet är att i WebPartZonesträcker sig den kortare WebPart kontrollen inte till zonens höjd vid återgivning. Men om du tar bort deklarationen DOCTYPE från sidan och kör sidan igen uppstår inte problemet, eftersom webbläsaren nu inte renderar sidan i standardläge.

<%@ Page Language="C#"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  protected void Button1_Click(object sender, EventArgs e)
  {
    wpmgr.DisplayMode = WebPartManager.DesignDisplayMode;
  }
  protected void Button2_Click(object sender, EventArgs e)
  {
    wpmgr.DisplayMode = WebPartManager.BrowseDisplayMode;
  }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="wpmgr" runat="server" />
      <asp:webpartzone id="WebPartZone1" runat="server" 
        layoutorientation="horizontal">
        <zonetemplate>
          <asp:textbox id="TextBox1" runat="server" title="Text input">
          </asp:textbox>
          <asp:calendar id="Calendar1" runat="server" title="Personal Calendar" />
        </zonetemplate>
      </asp:webpartzone>
      <asp:button id="Button1" runat="server" text="Design Mode" 
        onclick="Button1_Click" />
      <br />
      <asp:button id="Button2" runat="server" onclick="Button2_Click" 
        text="Browse Mode" />
    </form>
</body>
</html>
<%@ Page Language="VB"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Protected Sub Button1_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    
    wpmgr.DisplayMode = WebPartManager.DesignDisplayMode
    
  End Sub

  Protected Sub Button2_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs)
    
    wpmgr.DisplayMode = WebPartManager.BrowseDisplayMode
    
  End Sub
  
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="wpmgr" runat="server" />
      <asp:webpartzone id="WebPartZone1" runat="server" 
        layoutorientation="horizontal">
        <zonetemplate>
          <asp:textbox id="TextBox1" runat="server" title="Text input">
          </asp:textbox>
          <asp:calendar id="Calendar1" runat="server" title="Personal Calendar" />
        </zonetemplate>
      </asp:webpartzone>
      <asp:button id="Button1" runat="server" text="Design Mode" 
        onclick="Button1_Click" />
      <br />
      <asp:button id="Button2" runat="server" onclick="Button2_Click" 
        text="Browse Mode" />
    </form>
</body>
</html>

Om du vill se hur lösningen (beskrivs i avsnittet Kommentarer) fungerar kan du prova att lägga till ett height attribut i elementet <asp:webpartzone> samtidigt som deklarationen DOCTYPE hålls på sidan. Du kan använda följande kod för att lägga till attributet i taggen:

Height="200px"

Kör sidan och nu sträcker sig båda WebPart kontrollerna för att fylla zonens uttryckligen deklarerade höjd.

Du kan också experimentera med det här kodexemplet för att observera det höjdrelaterade återgivningsproblemet i det andra scenariot, som inträffar när zonens LayoutOrientation är inställd på Vertical. Ta bort det befintliga LayoutOrientation attributet och dess värde från elementet <asp:webpartzone> , vilket gör att zonens orientering återgår till den lodräta standardorienteringen. Ange höjdattributet för elementet <asp:webpartzone> till 200 bildpunkter, som du gjorde ovan, och kör sidan. Zonens höjd ser för stor ut och kontrollerna är inte proportionellt storleksanpassade till zonens höjd. Ta nu bort höjdattributet och kör sidan igen. Kontrollerna återges nu i förhållande till zonens höjd.

Kommentarer

Internet Explorer återgivningslägen kan påverka höjden på en WebPart kontroll och höjden på den zon som innehåller den. Internet Explorer renderar webbsidor antingen i kompatibilitetsläge (bakåtkompatibla med tidigare webbläsarversioner) eller i standardläge (bestäms av förekomsten av en DOCTYPE-deklaration på sidan). Information om dessa lägen finns i egenskapen DHTML compatMode .

När Internet Explorer renderar en sida i standardläge kanske den under vissa omständigheter inte ändrar storlek på celler i tabeller, även när en cells HTML-kod är <td height="100%">. Därför återges WebPart kontroller och deras innehållande zon så att kontrollerna inte sträcker sig till zonens fulla höjd.

När Internet Explorer är i standardläge återges inte kontrollerna för att sträcka sig till sin fulla höjd i följande fall:

  • När en zons LayoutOrientation egenskap är inställd Vertical på och du uttryckligen anger höjden på zonen. Om du vill aktivera kontroller för att fylla hela zonens höjd ska du inte ange höjden på en vågrät zon.

  • När en zons LayoutOrientation egenskap är inställd på Horizontal och du inte uttryckligen anger höjden på zonen eller de inneslutna kontrollerna. Om du vill aktivera kontroller för att fylla hela zonens höjd anger du zonens eller kontrollernas höjd i en vertikalt orienterad zon.

Gäller för

Se även