WebPart.Height 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定區域的高度。
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
屬性值
表示 Unit 高度的 WebPartZone 物件。 Unit 的預設型別為像素,如 Type 所指出。
- 屬性
範例
下列程式碼範例示範會影響 中 WebPartZone 控制項高度的 WebPart 轉譯問題。 若要示範此問題,您必須在 Internet Explorer 中執行頁面。
請注意,區域的方向會設定為水準,而且區域的高度及其內的控制項不會明確設定。 結果是 在 中 WebPartZone ,較短 WebPart 的控制項不會在轉譯時延展到區域的高度。 不過,如果您從頁面移除 DOCTYPE
宣告並再次執行頁面,則不會發生問題,因為現在瀏覽器不會以標準模式轉譯頁面。
<%@ 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>
若要查看一節中所述的因應措施 () 運作方式,請嘗試將屬性新增 height
至 <asp:webpartzone>
元素,同時將宣告保留在 DOCTYPE
頁面中。 您可以使用下列程式碼,將 屬性新增至 標記:
Height="200px"
執行頁面,現在這兩個控制項都會 WebPart 延展以填滿區域明確宣告的高度。
您也可以試驗此程式碼範例,以觀察其他案例中的高度相關轉譯問題,當區域的 LayoutOrientation 設定為 Vertical 時,就會發生此問題。 從 <asp:webpartzone>
元素中移除現有的 LayoutOrientation
屬性及其值,這會導致區域的方向還原為預設的垂直方向。 將元素上的 <asp:webpartzone>
height 屬性設定為 200 圖元,如同您在上面所做的一樣,並執行頁面。 區域的高度看起來太大,而且控制項不會依比例調整為區域的高度。 現在請移除 height 屬性,然後再次執行頁面。 控制項現在會呈現相對於區域的高度。
備註
Internet Explorer 轉譯模式可能會影響控制項的高度 WebPart ,以及包含控制項的區域高度。 Internet Explorer 會轉譯相容性模式中的網頁, (與舊版瀏覽器版本回溯相容) ,或在標準模式中轉譯網頁) 中存在 DOCTYPE
宣告所決定 (。 如需這些模式的相關資訊,請參閱 DHTML compatMode 屬性。
當 Internet Explorer 以標準模式轉譯頁面時,在某些情況下,它可能不會調整表格中的資料格大小,即使儲存格的 HTML 標籤為 <td height="100%">
也一般。 因此, WebPart 控制項及其包含區域會轉譯,讓控制項不會延展到區域的完整高度。
當 Internet Explorer 處於標準模式時,控制項不會在下列情況下轉譯為延展到其完整高度:
當區域的 LayoutOrientation 屬性設定為 Vertical ,且您明確設定區域的高度時。 若要讓控制項填滿區域的完整高度,請勿指定水準導向區域的高度。
當區域的 LayoutOrientation 屬性設定為 Horizontal ,而且您未明確設定區域或包含控制項的高度時。 若要讓控制項填滿區域的完整高度,請在垂直導向區域中設定區域或控制項的高度。