Unit 結構
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示長度的度量。
public value class Unit
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.UnitConverter))]
public struct Unit
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.UnitConverter))]
[System.Serializable]
public struct Unit
[<System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.UnitConverter))>]
type Unit = struct
[<System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.UnitConverter))>]
[<System.Serializable>]
type Unit = struct
Public Structure Unit
- 繼承
- 屬性
範例
下列程式碼範例示範如何使用 Style 物件一次變更多個控制項的樣式屬性。 每次其中一個 Style 屬性值變更時,每個控制項都必須呼叫其 ApplyStyle 方法。 請注意,並非所有控制項都支援示範的所有屬性。 如果控制項不支援特定屬性,當屬性值變更時,控制項的外觀將不會變更。
<!-- -->
<!-- -->
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Drawing" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private Style primaryStyle = new Style();
void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
// Add data to the borderColorList,
// backColorList, and foreColorList controls.
ListItemCollection colors = new ListItemCollection();
colors.Add(Color.Black.Name);
colors.Add(Color.Blue.Name);
colors.Add(Color.Green.Name);
colors.Add(Color.Orange.Name);
colors.Add(Color.Purple.Name);
colors.Add(Color.Red.Name);
colors.Add(Color.White.Name);
colors.Add(Color.Yellow.Name);
borderColorList.DataSource = colors;
borderColorList.DataBind();
backColorList.DataSource = colors;
backColorList.DataBind();
foreColorList.DataSource = colors;
foreColorList.DataBind();
//<Snippet4>
// Add data to the borderStyleList control.
ListItemCollection styles = new ListItemCollection();
Type styleType = typeof(BorderStyle);
foreach (string s in Enum.GetNames(styleType))
{
styles.Add(s);
}
borderStyleList.DataSource = styles;
borderStyleList.DataBind();
//</Snippet4>
// Add data to the borderWidthList control.
ListItemCollection widths = new ListItemCollection();
for (int i = 0; i < 11; i++)
{
widths.Add(i.ToString() + "px");
}
borderWidthList.DataSource = widths;
borderWidthList.DataBind();
// Add data to the fontNameList control.
ListItemCollection names = new ListItemCollection();
names.Add("Arial");
names.Add("Courier");
names.Add("Garamond");
names.Add("Times New Roman");
names.Add("Verdana");
fontNameList.DataSource = names;
fontNameList.DataBind();
// Add data to the fontSizeList control.
ListItemCollection fontSizes = new ListItemCollection();
fontSizes.Add("Small");
fontSizes.Add("Medium");
fontSizes.Add("Large");
fontSizes.Add("10pt");
fontSizes.Add("14pt");
fontSizes.Add("20pt");
fontSizeList.DataSource = fontSizes;
fontSizeList.DataBind();
//Set primaryStyle as the style for each control.
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
}
//<Snippet5>
void ChangeBorderColor(object sender, System.EventArgs e)
{
primaryStyle.BorderColor =
Color.FromName(borderColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet5>
//<Snippet6>
void ChangeBackColor(object sender, System.EventArgs e)
{
primaryStyle.BackColor =
Color.FromName(backColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet6>
//<Snippet7>
void ChangeForeColor(object sender, System.EventArgs e)
{
primaryStyle.ForeColor =
Color.FromName(foreColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet7>
//<Snippet8>
void ChangeBorderStyle(object sender, System.EventArgs e)
{
primaryStyle.BorderStyle =
(BorderStyle)Enum.Parse(typeof(BorderStyle),
borderStyleList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet8>
//<Snippet9>
void ChangeBorderWidth(object sender, System.EventArgs e)
{
primaryStyle.BorderWidth =
Unit.Parse(borderWidthList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet9>
//<Snippet10>
void ChangeFont(object sender, System.EventArgs e)
{
primaryStyle.Font.Name =
fontNameList.SelectedItem.Text;
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet10>
//<Snippet11>
void ChangeFontSize(object sender, System.EventArgs e)
{
primaryStyle.Font.Size =
FontUnit.Parse(fontSizeList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
//</Snippet11>
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table cellpadding="6" border="0">
<tr>
<td rowspan="10" style="border:solid 1px Gray">
<p>
<asp:label id="Label1"
Text="Border Properties Example" Runat="server">
Label Styles
</asp:label>
</p>
<p>
<asp:button id="Button1" runat="server"
Text="Button Styles">
</asp:button>
</p>
<p>
<asp:listbox id="ListBox1" Runat="server">
<asp:ListItem Value="0" Text="List Item 0">
</asp:ListItem>
<asp:ListItem Value="1" Text="List Item 1">
</asp:ListItem>
<asp:ListItem Value="2" Text="List Item 2">
</asp:ListItem>
</asp:listbox>
</p>
<p>
<asp:textbox id="TextBox1"
Text="TextBox Styles" Runat="server">
</asp:textbox>
</p>
<p>
<asp:table id="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell Text="(0,0)"></asp:TableCell>
<asp:TableCell Text="(0,1)"></asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell Text="(1,0)"></asp:TableCell>
<asp:TableCell Text="(1,1)"></asp:TableCell>
</asp:TableRow>
</asp:table>
</p>
</td>
<td align="right">
<asp:Label ID="Label2" runat="server"
AssociatedControlID="borderColorList"
Text="Border Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label3" Runat="server"
AssociatedControlID="borderStyleList"
Text="Border Style:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderStyleList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderStyle">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label4" Runat="server"
AssociatedControlID="borderWidthList"
Text="Border Width">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderWidthList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderWidth">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label5" Runat="server"
AssociatedControlID="backColorList"
Text="Back Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="backColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBackColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label6" Runat="server"
AssociatedControlID="foreColorList"
Text="Foreground Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="foreColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeForeColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label7" Runat="server"
AssociatedControlID="fontNameList"
Text="Font Name:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontNameList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFont">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label8" Runat="server"
AssociatedControlID="fontSizeList"
Text="Font Size:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontSizeList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFontSize">
</asp:dropdownlist>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Drawing" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private primaryStyle As New Style()
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
If Not Page.IsPostBack Then
' Add data to the borderColorList,
' backColorList, and foreColorList controls.
Dim colors As New ListItemCollection()
colors.Add(Color.Black.Name)
colors.Add(Color.Blue.Name)
colors.Add(Color.Green.Name)
colors.Add(Color.Orange.Name)
colors.Add(Color.Purple.Name)
colors.Add(Color.Red.Name)
colors.Add(Color.White.Name)
colors.Add(Color.Yellow.Name)
borderColorList.DataSource = colors
borderColorList.DataBind()
backColorList.DataSource = colors
backColorList.DataBind()
foreColorList.DataSource = colors
foreColorList.DataBind()
'<Snippet4>
' Add data to the borderStyleList control.
Dim styles As New ListItemCollection()
Dim styleType As Type = GetType(BorderStyle)
Dim s As String
For Each s In [Enum].GetNames(styleType)
styles.Add(s)
Next s
borderStyleList.DataSource = styles
borderStyleList.DataBind()
'</Snippet4>
' Add data to the borderWidthList control.
Dim widths As New ListItemCollection()
Dim i As Integer
For i = 0 To 10
widths.Add(i.ToString() & "px")
Next i
borderWidthList.DataSource = widths
borderWidthList.DataBind()
' Add data to the fontNameList control.
Dim names As New ListItemCollection()
names.Add("Arial")
names.Add("Courier")
names.Add("Garamond")
names.Add("Times New Roman")
names.Add("Verdana")
fontNameList.DataSource = names
fontNameList.DataBind()
' Add data to the fontSizeList control.
Dim fontSizes As New ListItemCollection()
fontSizes.Add("Small")
fontSizes.Add("Medium")
fontSizes.Add("Large")
fontSizes.Add("10pt")
fontSizes.Add("14pt")
fontSizes.Add("20pt")
fontSizeList.DataSource = fontSizes
fontSizeList.DataBind()
' Set primaryStyle as the style for each control.
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End If
End Sub
'<Snippet5>
Sub ChangeBorderColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderColor = _
Color.FromName(borderColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet5>
'<Snippet6>
Sub ChangeBackColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BackColor = _
Color.FromName(backColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet6>
'<Snippet7>
Sub ChangeForeColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.ForeColor = _
Color.FromName(foreColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet7>
'<Snippet8>
Sub ChangeBorderStyle(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderStyle = _
CType([Enum].Parse(GetType(BorderStyle), _
borderStyleList.SelectedItem.Text), BorderStyle)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet8>
'<Snippet9>
Sub ChangeBorderWidth(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderWidth = _
Unit.Parse(borderWidthList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet9>
'<Snippet10>
Sub ChangeFont(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.Font.Name = _
fontNameList.SelectedItem.Text
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet10>
'<Snippet11>
Sub ChangeFontSize(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.Font.Size = _
FontUnit.Parse(fontSizeList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
'</Snippet11>
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Applied Style Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table cellpadding="6" border="0">
<tr>
<td rowspan="10" style="border:solid 1px Gray">
<p>
<asp:label id="Label1"
Text="Border Properties Example" Runat="server">
Label Styles
</asp:label>
</p>
<p>
<asp:button id="Button1" runat="server"
Text="Button Styles">
</asp:button>
</p>
<p>
<asp:listbox id="ListBox1" Runat="server">
<asp:ListItem Value="0" Text="List Item 0">
</asp:ListItem>
<asp:ListItem Value="1" Text="List Item 1">
</asp:ListItem>
<asp:ListItem Value="2" Text="List Item 2">
</asp:ListItem>
</asp:listbox>
</p>
<p>
<asp:textbox id="TextBox1"
Text="TextBox Styles" Runat="server">
</asp:textbox>
</p>
<p>
<asp:table id="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell Text="(0,0)"></asp:TableCell>
<asp:TableCell Text="(0,1)"></asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell Text="(1,0)"></asp:TableCell>
<asp:TableCell Text="(1,1)"></asp:TableCell>
</asp:TableRow>
</asp:table>
</p>
</td>
<td align="right">
<asp:Label ID="Label2" runat="server"
AssociatedControlID="borderColorList"
Text="Border Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label3" Runat="server"
AssociatedControlID="borderStyleList"
Text="Border Style:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderStyleList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderStyle">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label4" Runat="server"
AssociatedControlID="borderWidthList"
Text="Border Width">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderWidthList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderWidth">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label5" Runat="server"
AssociatedControlID="backColorList"
Text="Back Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="backColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBackColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label6" Runat="server"
AssociatedControlID="foreColorList"
Text="Foreground Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="foreColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeForeColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label7" Runat="server"
AssociatedControlID="fontNameList"
Text="Font Name:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontNameList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFont">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label8" Runat="server"
AssociatedControlID="fontSizeList"
Text="Font Size:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontSizeList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFontSize">
</asp:dropdownlist>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
備註
結構 Unit 代表可以以任何 HTML 相容大小單位表示的長度度量。 UnitType 列舉型別 (Enumeration) 列出可以表示的度量單位。 由 Unit 和 之類的 BorderWidth
Height
屬性用來表示屬性的長度或寬度。 例如,您可以將 Web 服務器控制項的 屬性設定 BorderWidth 為 Unit 代表五個圖元的 。
注意
類別 Unit 只能代表介於 -32768 和 32767 之間的值。
Value使用 屬性來判斷度量的長度。 度量單位是使用 Type 屬性來決定。 您可以使用 、 Percentage 、 Pixel 和 Point 方法,將 Parse 其他資料類型 Unit 轉換成 。
如需 實例 Unit 的初始屬性值清單,請參閱 建 Unit 構函式。
建構函式
Unit(Double) |
使用指定的雙精確度浮點數,初始化 Unit 結構的新執行個體。 |
Unit(Double, UnitType) | |
Unit(Int32) |
使用指定的 32 位元帶正負號的整數 (Signed Integer),初始化 Unit 結構的新執行個體。 |
Unit(String) |
使用指定的長度,初始化 Unit 結構的新執行個體。 |
Unit(String, CultureInfo) |
使用指定的長度和 Unit,初始化 CultureInfo 結構的新執行個體。 |
欄位
Empty |
表示空的 Unit。 此欄位為唯讀。 |
屬性
IsEmpty |
取得值,指出 Unit 是否為空的。 |
Type |
取得 Unit 的單位類型。 |
Value |
取得 Unit 的長度。 |
方法
Equals(Object) |
將這個 Unit 與指定的物件相比較。 |
GetHashCode() |
傳回這個執行個體的雜湊碼。 |
Parse(String) |
將指定的字串轉換成 Unit。 |
Parse(String, CultureInfo) |
將指定的字串和 CultureInfo 轉換成 Unit。 |
Percentage(Double) |
從指定的雙精確度浮點數,建立 Unit 型別的 Percentage。 |
Pixel(Int32) | |
Point(Int32) | |
ToString() | |
ToString(CultureInfo) |
將 Unit 轉換成指定的文化特性中的相等字串。 |
ToString(IFormatProvider) |
使用指定的格式提供者,將 Unit 轉換成對等字串。 |
運算子
Equality(Unit, Unit) |
比較兩個 Unit 物件,判斷它們是否相等。 |
Implicit(Int32 to Unit) |
從指定的 32 位元不帶正負號的整數 (Unsigned Integer) 中,隱含建立 Unit 型別的 Pixel。 |
Inequality(Unit, Unit) |
比較兩個 Unit 物件,判斷它們是否不相等。 |