客户端控件在服务器上的设置与控制(客户端数据绑定)


 

默认情况下,ASP.NET 文件中的 HTML 元素被视为文本,并且页面开发人员不能以编程方式访问。若要使这些元素能够以编程方式访问,可以通过添加 runat="server" 属性,指示应将 HTML 元素作为服务器控件分析和处理。

唯一的 id 属性允许以编程方式引用该控件。属性用于声明服务器控件实例上的属性参数和事件绑定。

HTML 服务器控件必须驻留在具有 runat="server" 属性的包含 <form> 标记中。

ASP.NET 不要求文本(非动态的)HTML 内容的格式正确,但它确实要求所有 HTML 元素要正确结束(用一个后缀“/”或结束标记)和干净地嵌套(不允许出现重叠标记)。如果没有正确结束 HTML 元素,ASP.NET 将无法识别该元素。该元素将被忽略或者将发生编译错误,具体取决于该元素的构成方式。

可以用三种不同的方法创建任意“Web 窗体”控件的实例:作为 HTML 文档中的元素创建;在应用程序快速开发 (RAD) 环境中创建,该环境允许您将控件拖到页上;或以编程方式在代码声明块或代码隐藏文件中创建。

共享 HTML 控件属性
描述所有 HTML 服务器控件所共有的属性。
HtmlAnchor 控件
描述 HtmlAnchor 控件。HtmlAnchor 控件允许您以编程方式访问服务器上的 HTML <a> 标记。
HtmlButton 控件
描述 HtmlButton 控件。HtmlButton 控件允许您以编程方式访问服务器上的 HTML <button> 标记。
HtmlForm 控件
描述 HtmlForm 控件。HtmlForm 控件允许您以编程方式访问服务器上的 HTML <form> 标记。
HtmlGenericControl 控件
描述 HtmlGenericControl 控件。HtmlGenericControl 类允许您以编程方式访问不由特定的 .NET 框架类表示的 HTML 服务器控件标记,如 <span>、<div>、<body> 和 <font>。
HtmlImage 控件
描述 HtmlImage 控件。HtmlImage 控件允许您以编程方式访问服务器上的 HTML <img> 标记。
HtmlInputButton 控件
描述 HtmlInputButton 控件。HtmlInputButton 控件允许您以编程方式访问服务器上的 HTML <input type= button>、<input type= submit> 和 <input type= reset> 标记。
HtmlInputCheckBox 控件
描述 HtmlInputCheckBox 控件。HtmlInputCheckBox 控件允许您以编程方式访问服务器上的 HTML <input type= checkbox> 标记。
HtmlInputFile 控件
描述 HtmlInputFile 控件。HtmlInputFile 控件允许您以编程方式访问服务器上的 HTML <input type= file> 标记。
HtmlInputHidden 控件
描述 HtmlInputHidden 控件。HtmlInputHidden 控件允许您以编程方式访问服务器上的 HTML <input type=hidden> 标记。
HtmlInputImage 控件
描述 HtmlInputImage 控件。HtmlInputImage 控件允许您以编程方式访问服务器上的 HTML <input type= image> 标记。
HtmlInputRadioButton 控件
描述 HtmlInputRadioButton 控件。HtmlInputRadioButton 控件允许您以编程方式访问服务器上的 HTML <input type= radio> 标记。
HtmlInputText 控件
描述 HtmlInputText 控件。HtmlInputText 控件允许您以编程方式访问服务器上的 HTML <input type= text> 和 <input type= password> 标记。
HtmlSelect 控件
描述 HtmlSelect 控件。HtmlSelect 控件允许您以编程方式访问服务器上的 HTML <select> 标记。
HtmlTable 控件
描述 HtmlTable 控件。HtmlTable 控件允许您以编程方式访问服务器上的 HTML <table> 标记。
HtmlTableCell 控件
描述 HtmlTableCell 控件。HtmlTableCell 控件允许您以编程方式访问服务器上的 HTML <td> 和 <th> 标记。
HtmlTableRow 控件
描述 HtmlTableRow 控件。HtmlTableRow 控件允许您以编程方式访问服务器上的 HTML <tr> 标记。
HtmlTextArea 控件
描述 HtmlTextArea 控件。HtmlTextArea 控件允许您以编程方式访问服务器上的 HTML <textarea> 标记。

共享 HTML 控件属性

作为 .NET 框架的一部分,ASP.NET 共享命名空间和类之间的继承。有两个 HTML 控件的子集,它们共享不同基类的属性。这些子集称为容器控件和输入控件。有关继承和类层次结构的更多信息,请参阅 Web 窗体控件层次结构。

在 HTML 控件上声明的所有属性都被添加到该控件的 attribute 集合,并且可以像属性那样,以编程方式对其进行操作。例如,如果在 <body> 元素上声明 bgcolor 属性,则可以以编程方式访问该属性并编写事件处理程序以更改它的值。

所有 HTML 控件共享的属性
Attributes 获取在选定的 ASP.NET 页中的服务器控件标记上表示的所有属性名称和值对。
注意 在 Html 服务器控件中,操作 Attributes 集合与操作 ViewState 相同。
Disabled 获取或设置一个值,该值指示当 HTML 控件呈现在浏览器上时是否包含 disabled 属性。若包含该属性将使该控件成为只读控件。
Style 获取被应用于 .aspx 文件中的指定 HTML 服务器控件的所有级联样式表 (CSS) 属性。
TagName 获取包含 runat="server" 属性的标记的元素名。
Visible 获取或设置一个值,该值指示 HTML 服务器控件是否显示在页面上。

所有 HTML 输入控件共享的属性
HTML 输入控件映射到标准 HTML 输入元素。它们包含 type 属性,该属性定义它们在 Web 页中呈现的输入控件的类型。

HtmlInputText、HtmlInputButton、HtmlInputCheckBox、HtmlInputImage、HtmlInputHidden、HtmlInputFile 和 HtmlInputRadioButton 控件共享下列属性。

Name 获取或设置 HtmlInputControl 的唯一标识符名称。
Value 获取或设置与输入控件关联的值。
注意 与控件关联的值取决于该控件的上下文。例如,在允许输入文本的控件(如 HtmlInputText 控件)中,值为在控件中输入的文本。在不允许输入文本的控件(如 HtmlInputButton 控件)中,值为在该控件中显示的标题。有关 Value 属性的上下文的信息,请参考特定的控件。
Type 获取 HtmlInputControl 的类型。例如,如果将该属性设置为 text,则 HtmlInputControl 为用于数据输入的文本框。

所有 HTML 容器控件共享的属性
HTML 容器控件映射到 HTML 元素,这些元素需要具有开始和结束标记,如 <select>、<a>、<button> 和 <form> 元素。

HtmlTableCell、HtmlTable、HtmlTableRow、HtmlButton、HtmlForm、HtmlAnchor、HtmlGenericControl、HtmlSelect 和 HtmlTextArea 控件共享下列属性。

InnerHtml 获取或设置指定的 HTML 控件的开始和结束标记之间的内容。InnerHtml 属性不能自动地将特殊字符转换为 HTML 实体。例如,小于号字符 (<) 不转换为 &lt;。此属性通常用于将 HTML 元素嵌入到容器控件中。
InnerText 获取或设置指定的 HTML 控件的开始和结束标记之间的所有文本。与 InnerHTML 属性不同,InnerText 属性自动地将特殊字符转换为 HTML 实体。例如,小于号字符 (<) 转换为 &lt;。此属性通常在希望不必指定 HTML 实体即显示带有特殊字符的文本时使用。
HtmlAnchor 控件

创建一个服务器端控件,该控件映射到 <a> HTML 元素并允许您链接到其他 Web 页。

<a id="programmaticID"
   href="linkurl"
   name="bookmarkname"
   OnServerClick="onserverclickhandler"
   target="linkedcontentframeorwindow"
   title="titledisplayedbybrowser"
   runat="server" >
linktext
</a>
备注
使用 HtmlAnchor 控件以编程方式控制 <a> HTML 元素。可使用 <a> HTML 元素创建允许您移动到该页上的其他位置或其他 Web 页的超级链接。HtmlAnchor 控件必须使用带有开始和结束标记的正确格式。您可以通过将文本放置在开始和结束标记之间来指定控件标题。此服务器控件通常用于动态修改 <a> 元素的属性和属性,显示来自数据源的超级链接和控制事件以动态生成 HtmlAnchor 控件。

可以通过使用 Target 属性来指定显示新 Web 页的位置。除了以下划线开始的特殊值 _blank、_self、_parent 和 _top 外,Target 值必须以 a 到 z(不区分大小写)范围中的字母开头。

可以动态生成希望 HtmlAnchor 控件链接到的 URL。若要动态生成 HRef 属性,请在 HTML 文档中声明 HtmlAnchor 控件。例如:

<a id="anchor1" runat="server">
注意 请记住将 HtmlAnchor 控件嵌入 HtmlForm 控件的开始和结束标记中。
下一步,编写一个事件处理程序,向 HtmlControl 的 HRef 属性分配一个 URL。
虽然 HtmlAnchor 控件不直接支持绑定到数据源,但可以从数据源中的字段的值生成超级链接。首先将数据源绑定到列表控件,如 Repeater。然后在列表控件内部声明一个 HtmlAnchor 控件。最后添加 HRef 属性值的内联代码,使用 DataBinder 类的 Eval 方法指定要使用的字段。

示例
下面的示例说明当 Page_Load 事件发生时,如何动态地将 URL 与 HtmlAnchor 控件关联。

[Visual Basic]
Sub Page_Load(sender As Object, e As EventArgs)
   anchor1.HRef = "http://www.microsoft.com"
End Sub
[C#]
void Page_Load(object sender, EventArgs e)
{
   anchor1.HRef = "http://www.microsoft.com";
}
下面的示例说明如何将 HtmlAnchor 控件包含在 Repeater 控件中。将数据绑定到 Repeater 控件,并将 HtmlAnchor 控件放置在将数据源中的指定字段显示为超级链接的 ItemTemplate 中。
复制内容到剪贴板
代码:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<html>
<script runat="server">
   void Page_Load(Object sender, EventArgs e)
   {
      DataTable dt = new DataTable();
      DataRow dr;
      dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
      dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
      dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
      dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
      dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
      for (int i = 0; i < 9; i++)
      {
         dr = dt.NewRow();
         dr[0] = i;
         dr[1] = "Item " + i.ToString();
         dr[2] = DateTime.Now;
         dr[3] = (i % 2 != 0) ? true : false;
         dr[4] = 1.23 * (i+1);
         dt.Rows.Add(dr);
      }
      MyRepeater.DataSource=new DataView(dt);
      MyRepeater.DataBind();
   }
</script>
<body>
   <h3>Data Binding with the HtmlAnchor</h3>
   <p>
   <form runat=server>
      <asp:Repeater id="MyRepeater" runat="server">
         <ItemTemplate>
            Link for
            <a href='<%# DataBinder.Eval(Container,
                         "DataItem.StringValue",
                         "detailspage.aspx?id={0}") %>'
               runat="server">
               <%# DataBinder.Eval(Container, "DataItem.StringValue") %>
            </a>
            <p>
         </ItemTemplate>
      </asp:Repeater>
   </form>
</body>
</html>

HtmlButton 控件

创建一个服务器端控件,该控件映射到 <button> HTML 元素并允许您创建普通按钮。

<button id="programmaticID"
        OnServerClick="onserverclickhandler"
        runat="server" >
   buttontext, image, or control
</button>

备注
使用 HtmlButton 控件对 HTML <button> 元素进行编程。可以为 HtmlButton 控件的 ServerClick 事件提供自定义代码,以指定在单击该控件时执行的操作。

还可以自定义放置在 ASP.NET (.aspx) 页中的按钮的外观。HTML 4.0 <button> 元素使您能够创建由嵌入的 HTML 元素(甚至其他“Web 窗体”控件)组成的按钮。

注意 <button> 元素在 HTML 4.0 规范中定义。因此,仅在 Microsoft Internet Explorer 4.0 版及更高版本中支持 HtmlButton 控件。
修改 HtmlButton 控件的外观有多种方法。例如,可以在控件元素的开始标记中向按钮分配样式属性,可以在插入到控件的开始和结束标记之间的文本周围包含格式化元素,或者可以为客户端的 onmouseover 和 onmouseout 事件分配属性值更改。还可以在按钮元素自身内部包含图像,或甚至包含其他“Web 窗体”控件。

将样式添加到 HtmlButton 控件

在“Web 窗体”页上声明 HtmlButton 控件:
<button runat="server"> </button>
在该控件的开始标记中,包含样式属性并声明希望该按钮显示的样式。例如,开始标记中的下列代码定义控件的字体大小和样式、背景色、边框颜色、高度和宽度。
style="font: 8pt verdana;background-color:lightgreen;border-color:black;height=30;width:100"
在 HtmlButton 控件中包含 DHTML 事件

在“Web 窗体”页上声明 HtmlButton 控件:
<button runat="server"> </button>
在该控件的开始标记中,包含希望为响应用户的行为而在浏览器上发生的 DHTML 事件。例如,当用户在控件上移动鼠标指针时,下列代码将导致控件的背景色更改为淡绿色。
mouseover="this.style.backgroundColor='lightgreen'"
在 HtmlButton 控件中包含格式化的文本、图像或其他“Web 窗体”控件

在“Web 窗体”页上声明 HtmlButton 控件:
<button runat="server"> </button>
用控件的开始和结束标记之间的格式化标记声明文本。例如,在控件的开始和结束标记之间包含 <b>Click Me!</b> 以用粗体显示控件文本。
在控件的开始和结束标记之间,包含希望显示的图像或控件的标记。例如,包含 <img src="/images/MyImage.gif"> 以显示存储在应用程序的图像目录中的 MyImage.gif 文件。
注意 请参阅希望在 HtmlButton 控件中包含的控件的控件语法。

示例
下面的示例显示本主题中描述的过程。它还包含两个简单事件处理程序的代码,这些处理程序通过由 <span> 元素创建的 HtmlGenericControl 的实例显示消息。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button1_OnClick(Source As Object, e As EventArgs)
         Span1.InnerHtml = "You clicked Button1"
      End Sub
      Sub Button2_OnClick(Source As Object, e As EventArgs)
         Span1.InnerHtml = "You clicked Button2"
      End Sub
   </script>
</head>
<body>
   <h3>HtmlButton Sample</h3>
   <form runat="server">
      <p>
      <button id="Button1"
              OnServerClick="Button1_OnClick"
              style="font: 8pt verdana;
                    background-color:lightgreen;
                    border-color:black;
                    height=30;
                    width:100"
              runat="server">
          <img src="/quickstart/aspplus/images/right4.gif"> Click me!
       </button>
       &nbsp;With embedded &lt;img&gt; tag
       <p>
       <p>
       <button id=Button2
               OnServerClick="Button2_OnClick"
               style="font: 8pt verdana;
                      background-color:lightgreen;
                      border-color:black;
                      height=30;
                      width:100"
               onmouseover="this.style.backgroundColor='yellow'"
               onmouseout="this.style.backgroundColor='lightgreen'"
               runat="server">
          Click me too!
       </button>
       &nbsp;With rollover effect
       <p>        
       <p>
       <span id=Span1 runat="server" />
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Button1_OnClick(object Source, EventArgs e)
      {
         Span1.InnerHtml="You clicked Button1";
      }
      void Button2_OnClick(object Source, EventArgs e)
      {
         Span1.InnerHtml="You clicked Button2";
      }
   </script>
</head>
<body>
   <h3>HtmlButton Sample</h3>
   <form runat="server">
      <p>
      <button id="Button1"
              OnServerClick="Button1_OnClick"
              style="font: 8pt verdana;
                    background-color:lightgreen;
                    border-color:black;
                    height=30;
                    width:100"
              runat="server">
          <img src="/quickstart/aspplus/images/right4.gif"> Click me!
       </button>
       &nbsp;With embedded &lt;img&gt; tag
       <p>
       <p>
       <button id=Button2
               OnServerClick="Button2_OnClick"
               style="font: 8pt verdana;
                      background-color:lightgreen;
                      border-color:black;
                      height=30;
                      width:100"
               onmouseover="this.style.backgroundColor='yellow'"
               onmouseout="this.style.backgroundColor='lightgreen'"
               runat="server">
          Click me too!
       </button>
       &nbsp;With rollover effect
       <p>        
       <p>
       <span id=Span1 runat="server" />
   </form>
</body>
</html>

HtmlForm 控件

创建一个服务器端控件,该控件映射到 <form> HTML 元素并允许您为 Web 页中的元素创建一个容器。

ASP.NET 语法
<form id="programmaticID"
      method=POST | GET
      action="srcpageURL"
      runat="server" >
   Other controls, input forms, and so on.
</form>
备注
使用 HtmlForm 控件对 HTML <form> 元素进行编程。若要利用回发服务,则所有“Web 窗体”控件(无论这些控件是 HTML、Web、pagelet 还是自定义的)都必须嵌套在 HtmlForm 控件的格式正确的开始和结束标记之间。如果没有正确结束标记,ASP.NET 将无法识别该元素。该元素将被忽略或者将发生编译错误,具体取决于该元素的构成方式。

注意 不能在单个“Web 窗体”页上包含多个 HtmlForm 控件。
默认情况下,将 HtmlForm 控件的 method 属性设置为 POST。您可以根据需要自定义 method 属性,但如果将 method 属性设置为 GET 或 POST 以外的值,则可能破坏内置视图状态并回送“Web 窗体”提供的服务。

注意 action 属性总是设置为页本身的 URL。无法更改 action 属性;因此,只能向页本身回送。
示例
下面的示例显示三个 HtmlButton 控件,其中每个按钮都有一个单独的 OnServerClick 事件处理程序。这些事件中的每个事件都导致向服务器回送(在发生回送的所有方案中都需要 HtmlForm 控件)。此例还说明在一个“Web 窗体”页上只允许有一个 HtmlForm 控件(包括支持多个事件的窗体)。如果包含多个 HtmlForm 控件,.NET 框架将引发异常。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button1_OnClick(Source As Object, e As EventArgs)
         Span1.InnerHtml = "You clicked Button1"
      End Sub
      Sub Button2_OnClick(Source As Object, e As EventArgs)
         Span2.InnerHtml = "You clicked Button2"
      End Sub
      Sub Button3_OnClick(Source As Object, e As EventArgs)
         Span3.InnerHtml = "You clicked Button3"
      End Sub
   </script>
</head>
<body>
   <h3>HtmlForm Sample</h3>
   <form id="ServerForm" runat="server">     
      <button id=Button1 runat="server"
              OnServerClick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id=Span1 runat="server" />
      <p>
      <button id=Button2 runat="server"
              OnServerClick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id=Span2 runat="server" />
      <p>
      <button id=Button3 runat="server"
              OnServerClick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id=Span3 runat="server" />
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
    <script runat="server">
       void Button1_OnClick(object Source, EventArgs e)
       {
          Span1.InnerHtml="You clicked Button1";
       }
       void Button2_OnClick(object Source, EventArgs e)
       {
          Span2.InnerHtml="You clicked Button2";
       }
       void Button3_OnClick(object Source, EventArgs e)
       {
          Span3.InnerHtml="You clicked Button3";
       }
    </script>
</head>
<body>
   <h3>HtmlForm Sample</h3>
   <form id="ServerForm" runat="server">     
      <button id=Button1 runat="server"
              OnServerClick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id=Span1 runat="server" />
      <p>
      <button id=Button2 runat="server"
              OnServerClick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id=Span2 runat="server" />
      <p>
      <button id=Button3 runat="server"
              OnServerClick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id=Span3 runat="server" />
   </form>
</body>
</html>

HtmlGenericControl控件

创建服务器端控件,该控件映射到不由特定的 .NET 框架类表示的 HTML 元素(如 <body> 和 <div>)。

<span | body | div | font | others
      id="programmaticID"
      runat="server" >
   Contentbetweentags
</span | body | div | font | others>
备注
在服务器上创建,以响应在不直接映射到特定 HTML 控件的元素中包含 runat="server" 属性/值对的标记。这些元素包括 <span>、<body>、<div> 和 <font> 元素等。该控件通过 TagName 属性将用作 HTML 控件的特定元素的标记名映射到 ASP.NET。此控件从 HtmlContainerControl 类继承功能,该类允许您动态地更改 HTML 控件标记的内部内容。

可以使用服务器端 <span> 元素显示由事件处理程序代码生成(通过用户输入或从在事件处理程序中指定的源)的文本。还可以使用 Page_Load 事件生成 span 控件中的文本和 HTML 样式属性,以便当在浏览器中显示文本时将文本格式化。

使用 <span> 元素从用户输入中动态生成页上的文本

声明页上的服务器端 span 控件并向它分配 id 属性以允许对控件进行编程访问。
<span id="MySpan" runat="server" />
声明 HtmlInputText 控件并向其分配 id 属性以允许对该控件进行编程访问。
<input type="text" id="myText" runat="server">
声明 HtmlInputButton 控件并向其分配 id 属性以允许对该控件进行编程访问。还应声明 OnServerClick 事件处理程序以指定在单击按钮时要执行的操作。
<input type="submit" Value="Click Here!"
       OnServerClick="SubmitBtn_Click" runat="server">
创建事件处理程序代码,该代码操作用户在文本框中输入的值以通过 span 控件显示它。此代码可以放置在代码隐藏文件中的页上的任意位置。
[Visual Basic]
Sub SubmitBtn_Click(sender As Object, e As EventArgs)
   MySpan.InnerHtml = myText.Value
End Sub
[C#]
void SubmitBtn_Click(object sender, EventArgs e)
{
   MySpan.InnerHtml = myText.Value;
}
示例
下面的示例显示可以如何基于 HtmlInputText 控件中的用户输入生成要显示的文本。通过在页上声明 <span> 元素创建的 HtmlGenericControl 为 <span> 元素提供对 InnerHtml 属性的访问。这使您可以操作分配给 <span> 元素的文本字符串。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub SubmitBtn_Click(Source As Object, e As EventArgs)
         MySpan.InnerHtml = "Welcome to ASP.NET, " & myText.Value & "."
      End Sub
   </script>
</head>
<body>
   <form id="myForm" runat="server">
   <p>Enter your name here:
   <input type="text" id="myText" runat="server">
   <br><br>
   <input type="submit" Value="Click Here!"
          OnServerClick="SubmitBtn_Click" runat="server">
   <br><br>
   <b><span id="MySpan" runat="server"/><b>
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void SubmitBtn_Click(object Source, EventArgs e)
      {
         MySpan.InnerHtml = "Welcome to ASP.NET, " + myText.Value + ".";
      }
   </script>
</head>
<body>
   <form id="myForm" runat="server">
   <p>Enter your name here:
   <input type="text" id="myText" runat="server">
   <br><br>
   <input type="submit" Value="Click Here!"
          OnServerClick="SubmitBtn_Click" runat="server">
   <br><br>
   <b><span id="MySpan" runat="server"/><b>
   </form>
</body>
</html>
下面的示例显示可以如何使用 HtmlGenericControl 以允许用户修改页的背景色。它还显示如何使用 AttributeCollection 类以编程方式访问可在任何 HTML 控件上声明的属性。
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub SubmitBtn_Click(Source As Object, e As EventArgs)
         Body.Attributes("bgcolor") = ColorSelect.Value
      End Sub
   </script>
</head>
<body id=Body runat="server">
   <h3>Updating Styles with the HtmlGenericControl</h3>
   <form runat="server">
      <p>
      Select a background color for the page: <p>
      <select id="ColorSelect" runat="server">
         <option>White</option>
         <option>Wheat</option>
         <option>Gainsboro</option>
         <option>LemonChiffon</option>
      </select>
      <input type="submit" runat="server"
             Value="Apply" OnServerClick="SubmitBtn_Click">
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void SubmitBtn_Click(object Source, EventArgs e)
      {
         Body.Attributes["bgcolor"] = ColorSelect.Value;
      }
   </script>
</head>
<body id=Body runat="server">
   <h3>Updating Styles with the HtmlGenericControl</h3>
   <form runat="server">
      <p>
      Select a background color for the page: <p>
      <select id="ColorSelect" runat="server">
         <option>White</option>
         <option>Wheat</option>
         <option>Gainsboro</option>
         <option>LemonChiffon</option>
      </select>
      <input type="submit" runat="server"
             Value="Apply" OnServerClick="SubmitBtn_Click">
   </form>
</body>
</html>

HtmlImage 控件

创建服务器端控件,该控件映射到 <img> HTML 元素并允许您显示图像。

<img id="programmaticID"
     alt="alttext"
     align= top | middle | bottom | left | right
     border="borderwidth"
     height="imageheight"
     src="imageURL"
     width="imagewidth"   
     runat="server" >
备注
使用 HtmlImage 控件对 HTML <img> 元素进行编程。此控件使您可以通过使用 Src、Width、Height、Border、Alt 和 Align 属性,分别动态地设置和检索图像的源、宽度、高度、边框宽度、替换文本和对齐方式。

注意 此控件不需要结束标记。
示例
下面的示例显示如何基于用户选择更改显示的图像。它将 /images 目录指定为要显示的图像的源路径。在“Web 窗体”页的 HtmlSelect 控件中选定的值确定要显示 /images 目录中的哪个图像。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub SubmitBtn_Click(Sender As Object, e As EventArgs)
         Image1.Src = "/images/" & Select1.Value
      End Sub
   </script>
</head>
<body>
   <h3>HtmlImage Sample</h3>
   <form runat="server">
      <img ID="Image1" src="/images/cereal1.gif" runat="server"/>
      <p>
      <p>
      Select an image file to display:
      <select id="Select1" runat="server">
         <option Value="Cereal1.gif">Healthy Grains</option>
         <option Value="Cereal2.gif">Corn Flake Cereal</option>
         <option Value="Cereal3.gif">U.F.O.S</option>
         <option Value="Cereal4.gif">Oatey O's</option>
         <option Value="Cereal5.gif">Strike</option>
         <option Value="Cereal7.gif">Fruity Pops</option>
       </select>
       <p>
       <p>
       <input type="submit" runat="server" Value="Apply"
              OnServerClick="SubmitBtn_Click">
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
    <script runat="server">
       void SubmitBtn_Click(Object Sender, EventArgs e)
       {
          Image1.Src="/images/" + Select1.Value;
       }
    </script>
</head>
<body>
   <h3>HtmlImage Sample</h3>
   <form runat="server">
      <img ID="Image1" src="/images/cereal1.gif" runat="server"/>
      <p>
      <p>
      Select an image file to display:
      <select id="Select1" runat="server">
         <option Value="Cereal1.gif">Healthy Grains</option>
         <option Value="Cereal2.gif">Corn Flake Cereal</option>
         <option Value="Cereal3.gif">U.F.O.S</option>
         <option Value="Cereal4.gif">Oatey O's</option>
         <option Value="Cereal5.gif">Strike</option>
         <option Value="Cereal7.gif">Fruity Pops</option>
       </select>
       <p>
       <p>
       <input type="submit" runat="server" Value="Apply"
              OnServerClick="SubmitBtn_Click">
   </form>
</body>
</html>

HtmlInputButton 控件

创建一个服务器端控件,该控件映射到 <input type=button>、<input type=submit> 和 <input type=reset> HTML 元素,并允许您分别创建命令按钮、提交按钮或重置按钮。

<input type=button | submit | reset
       id="programmaticID"
       OnServerClick="onserverclickhandler"
       runat="server" >
备注
使用 HtmlInputButton 控件对 <input type=button>、<input type=submit> 和 <input type=reset> HTML 元素进行编程。用户单击 HtmlInputButton 控件时,来自嵌有该控件的窗体的输入被发送到服务器并得到处理。然后,将响应发送回请求浏览器。

通过为 ServerClick 事件提供自定义事件处理程序,可以在单击控件时执行特定的指令集。

注意 “重置”按钮不支持 ServerClick 事件。单击“重置”按钮时,未必清除页上的所有输入控件。相反,在加载页时,它们返回到它们的原始状态。例如,如果文本框最初包含值 "JohnDoe",则单击“重置”按钮会使文本框返回到该值。
与 HtmlInputText 和 HtmlTextArea 控件一起使用时,可创建可以在服务器上处理的用户输入页或身份验证页。

注意 此控件不需要结束标记。
示例
下面的示例说明简单事件处理程序的一些有用的示例。该文件通过将用户输入的文本与 HTML 文档顶部的事件处理程序代码中包含的文本进行比较来处理身份验证方案。HTML 页的体包含一个 HtmlForm 控件,该控件中又包含两个 HtmlInputText 控件、两个 HtmlInputButton 控件和一个 HtmlGenericControl。第一个输入文本控件是一个简单的文本框,而第二个输入文本控件为密码框。两个按钮分别是“提交”和“重置”。通用控件为 <span> 元素,它显示由事件处理程序代码指定的适当消息。

当用户单击“提交”按钮时,SubmitBtn_Click 事件处理程序可通过两种方式使用条件循环作出响应。首先,如果用户在“名称”文本框中输入 JohnDoe,在“密码”文本框中输入 GoldFish,然后单击“提交”按钮,则服务器向 span 控件发送响应消息“已验证您的身份!”。如果用户输入除此之外的名称或密码,Web 页将在 span 控件中显示“错误的用户名或密码”。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
   <script runat="server">
      Sub SubmitBtn_Click(sender As Object, e as EventArgs)
         If (Name.Value = "JohnDoe") And _
            (Password.Value = "GoldFish") Then
            Message.InnerHtml = "You are authenticated"
         Else
            Message.InnerHtml = "Incorrect user name or password."
         End If
      End Sub     
   </script>
   <body>
         <form method=post runat="server">
             Enter Name:
             <input id="Name"
                    type=text size=40 runat="server">
             Enter Password:
             <input id="Password"
                    type=password size=40 runat="server">
             <input type=submit value="Enter"
                    OnServerClick="SubmitBtn_Click" runat="server">
             <input type=reset
                    runat="server">
             <h1>
             <span id="Message" runat="server"> </span>
             </h1>
         </form>
   </body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
   <script runat="server">
      void SubmitBtn_Click(Object sender, EventArgs e)
      {
         if (Name.Value == "JohnDoe" && Password.Value == "GoldFish")
            Message.InnerHtml = "You are authenticated";
         else
            Message.InnerHtml = "Incorrect user name or password.";
      }
   </script>
   <body>
         <form method=post runat="server">
             Enter Name:
             <input id="Name"
                    type=text size=40 runat="server">
             Enter Password:
             <input id="Password"
                    type=password size=40 runat="server">
             <input type=submit value="Enter"
                    OnServerClick="SubmitBtn_Click" runat="server">
             <input type=reset
                    runat="server">
             <h1>
             <span id="Message" runat="server"> </span>
             </h1>
         </form>
   </body>
</html>

HtmlInputCheckBox 控件

创建服务器端控件,该控件映射到 <input type=checkbox> HTML 元素并允许您创建使用户可以选择 true 或 false 状态的复选框控件。

<input type=checkbox
       id="programmaticID"
       checked
       runat="server" >
备注
使用 HtmlInputCheckBox 控件对 <input type=checkbox> HTML 元素进行编程。单击 HtmlInputCheckBox 控件时,该控件不会向服务器回送。当使用回送服务器的控件(如 HtmlInputButton 控件)时,复选框的状态被发送到服务器进行处理。若要确定是否选择了复选框,请测试控件的 Checked 属性。

注意 此控件不需要结束标记。
示例
下面的示例说明如何创建 HtmlInputCheckBox 控件以允许用户选择 true 或 false 状态。当用户单击页上包含的输入按钮时,Button1_Click 事件处理程序确定是否选中了 HtmlInputCheckBox 控件。然后,它在 <span> 控件中显示一个消息。请注意,即使此例中在默认情况下将选中的值设置为 true,用户仍然需要单击 Button1 以显示该文本。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button1_Click(Source As Object, e As EventArgs)
         If Check1.Checked = True Then
            Span1.InnerHtml = "Check1 is checked!"
         Else
            Span1.InnerHtml = "Check1 is not checked!"
         End If
      End Sub
   </script>
</head>
<body>
    <h3>HtmlInputCheckBox Sample</h3>
    <form runat="server">
        <input id="Check1" type=checkbox runat="server" checked/>
            CheckBox1 &nbsp;&nbsp;
        <span id=Span1 style="color:red" runat="server" />
        <p>
        <input type=button id="Button1" value="Enter"
               OnServerClick="Button1_Click" runat="server"/>
    </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
    <script runat="server">
       void Button1_Click(object Source, EventArgs e)
       {
          if (Check1.Checked == true)
          {
             Span1.InnerHtml = "Check1 is checked!";
          }
          else
          {
             Span1.InnerHtml = "Check1 is not checked!";
          }
       }
    </script>
</head>
<body>
    <h3>HtmlInputCheckBox Sample</h3>
    <form runat="server">
        <input id="Check1" type=checkbox runat="server" checked/>
            CheckBox1 &nbsp;&nbsp;
        <span id=Span1 style="color:red" runat="server" />
        <p>
        <input type=button id="Button1" value="Enter"
               OnServerClick="Button1_Click" runat="server"/>
    </form>
</body>
</html>

HtmlInputFile 控件

创建一个服务器端控件,该控件映射到 <input type=file> HTML 元素并允许您将文件上载到服务器上。
<input type=file
       id="programmaticID"
       accept="MIMEencodings"
       maxlength="maxfilepathlength"
       size="widthoffilepathtextbox"
       postedfile="uploadedfile"
       runat="server" >
备注
使用 HtmlInputFile 控件对 HTML <input type=file> 元素进行编程。可以使用 HtmlInputFile 控件方便地设计页,该页允许用户将二进制文件或文本文件从浏览器上载到在 Web 服务器上指定的目录中。所有 HTML 3.2 和更高版本的 Web 浏览器都允许进行文件上载。

示例
下面的示例说明一个简单的文件上载方案。第一部分代码定义该页的事件处理程序。当用户单击窗体上的“上载”按钮时,将在该页上显示文件名、内容长度和内容数量(以字节为单位),而文件本身则被上载到服务器上的 UploadedFiles 目录。

注意 必须将窗体的 enctype 属性设置为 "multipart/form-data"。
窗体的代码实现一个 HtmlForm 控件、一个 HtmlInputFile 控件、一个 HtmlInputButton 控件和四个 HtmlGenericControls(<div> 元素和三个 <span> 元素,每个元素的开始标记中都有 runat="server" 属性/值对)。

注意 若要查看有关该页上的上载文件的信息,必须在事件处理程序代码中将 Visible 属性(它是 HtmlGenericControl 从控件类继承的)设置为 true。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
   <script runat="server">
      Sub UploadBtn_Click(Sender as Object, e as EventArgs)
         ' Display information about posted file
         FileName.InnerHtml = MyFile.PostedFile.FileName
         MyContentType.InnerHtml = MyFile.PostedFile.ContentType
         ContentLength.InnerHtml = cStr(MyFile.PostedFile.ContentLength)
         FileDetails.Visible = True
         ' Save uploaded file to server
         MyFile.PostedFile.SaveAs("c:/Uploadedfiles/uploadfile.txt")
      End Sub
   </script>
   <body>
      <form action="fileupload.aspx"
            method="post"
            enctype="multipart/form-data"
            runat="server">
         <h1>ASP.NET File Upload Example</h1>
         Select File To Upload to Server:
         <input id="MyFile"
                type="file"
                runat="server">
         <br><br>
         <input type=submit
                value="Upload!"
                OnServerclick="UploadBtn_Click"
                runat="server">
         <br><br><br>
         <div id="FileDetails"
              Visible=false
              runat="server">
            FileName: <span id="FileName" runat="server"/> <br>
            ContentType: <span id="MyContentType" runat="server"/> <br>
            ContentLength: <span id="ContentLength" runat="server"/>bytes
            <br>
         </div>
      </form>
   </body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
   <script runat="server">
      void UploadBtn_Click(Object sender, EventArgs e)
      {
         // Display information about posted file
         FileName.InnerHtml = MyFile.PostedFile.FileName;
         MyContentType.InnerHtml = MyFile.PostedFile.ContentType;
         ContentLength.InnerHtml =
                               MyFile.PostedFile.ContentLength.ToString();
         FileDetails.Visible = true;
         // Save uploaded file to server
         MyFile.PostedFile.SaveAs("c://Uploadedfiles//uploadfile.txt");
      }
   </script>
   <body>
      <form action="fileupload.aspx"
            method="post"
            enctype="multipart/form-data"
            runat="server">
         <h1>ASP.NET File Upload Example</h1>
         Select File To Upload to Server:
         <input id="MyFile"
                type="file"
                runat="server">
         <br><br>
         <input type=submit
                value="Upload!"
                OnServerclick="UploadBtn_Click"
                runat="server">
         <br><br><br>
         <div id="FileDetails"
              Visible=false
              runat="server">
            FileName: <span id="FileName" runat="server"/> <br>
            ContentType: <span id="MyContentType" runat="server"/> <br>
            ContentLength: <span id="ContentLength" runat="server"/>bytes
            <br>
         </div>
      </form>
   </body>
</html>

HtmlInputHidden 控件

创建一个服务器端控件,该控件映射到 <input type=hidden> HTML 元素并允许您将信息存储在窗体上不可查看的控件中。

<input type="hidden"
       id="programmaticID"
       value="contentsofhiddenfield"
       runat="server" >
备注
使用 HtmlInputHidden 控件对 <input type=hidden> HTML 元素进行编程。尽管此控件是窗体的一部分,但它永远不在窗体上显示。由于在 HTML 中不保持状态,此控件通常与 HtmlInputButton 和 HtmlInputText 控件一起使用,以在对服务器的发送之间存储信息。

注意 此控件不需要结束标记。
示例
下面的示例说明如何使用 HtmlInputHidden 控件跨请求保存视图状态信息。<span> 控件显示存储在与当前请求紧邻的前一个 Web 请求的隐藏字段中的文本。

有两个事件处理程序。第一个事件在页被回送到服务器时发生。该事件处理程序获取存储在前一个发送请求的隐藏字段中的文本,并将其显示在 <span> 控件中。第二个事件在单击“提交”按钮时发生。该事件处理程序获取文本框的内容,并将它存储在 Web 页上的隐藏字段中。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
    <script runat="server">
      Sub Page_Load(Source As Object, e As EventArgs)
         If Page.IsPostBack Then
            Span1.InnerHtml = "Hidden value: <b>" + HiddenValue.Value + "</b>"
         End If
      End Sub
      Sub SubmitBtn_Click(Source As Object, e As EventArgs)
         HiddenValue.Value = StringContents.Value
      End Sub
    </script>
</head>
<body>
    <h3>HtmlInputHidden Sample</h3>
    <form runat="server">
        <input id="HiddenValue"
               type=hidden value="Initial Value" runat="server">
        Enter a string:
        <input id="StringContents" type=text size=40 runat="server">
        <p>
        <input type=submit value="Enter"
               OnServerClick="SubmitBtn_Click" runat="server">
        <p>
        <span id=Span1 runat="server">
           This label will display the previously entered text.
        </span>
    </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
    <script runat="server">
       void Page_Load(object Source, EventArgs e)
       {
          if (Page.IsPostBack)
          {
             Span1.InnerHtml="Hidden value: <b>" +
                             HiddenValue.Value + "</b>";
          }
       }
       void SubmitBtn_Click(object Source, EventArgs e)
       {
          HiddenValue.Value=StringContents.Value;
       }
    </script>
</head>
<body>
    <h3>HtmlInputHidden Sample</h3>
    <form runat="server">
        <input id="HiddenValue"
               type=hidden value="Initial Value" runat="server">
        Enter a string:
        <input id="StringContents" type=text size=40 runat="server">
        <p>
        <input type=submit value="Enter"
               OnServerClick="SubmitBtn_Click" runat="server">
        <p>
        <span id=Span1 runat="server">
           This label will display the previously entered text.
        </span>
    </form>
</body>
</html>

HtmlInputImage 控件

创建一个服务器端控件,该控件映射到 <input type=image> HTML 元素并允许您创建显示图像的按钮。
<input type=image
       id="programmaticID"
       src="imagepath"
       align="imagealignment"
       alt="alttext"
       OnServerClick="onserverclickhandler"
       width="borderwidthinpixels"
       runat="server" >
备注
使用 HtmlInputImage 控件对 HTML <input type=image> 元素进行编程。可以将此控件与 HtmlInputText、HtmlTextArea 及其他控件一起使用以构造用户输入窗体。因为此控件是在服务器上运行的 <input type=image> 元素,所以它提供与 HTML 相同的按钮自定义。此控件可以替代不支持 DHTML 和 HtmlButton 控件的浏览器。

注意 此控件不需要结束标记。

HTML 控件相对于 Web 控件的优点之一是:服务器端事件不与在客户端发生的事件冲突,除非服务器和客户端的代码本身彼此取消。这样,您就可以使用动态 HTML (DHTML) 事件修改在“Web 窗体”页上包含的任何图像的外观。

示例
下面的示例将静态图像按钮 (ImageButton) 控件与另一个图像按钮 (ImageButton) 控件进行比较,后者使用 DHTML onMouseOver 事件(该事件显示香蕉图像)和 onMouseOut 事件(该事件显示原始的芒果图像)。两个图像按钮都包含一个 OnServerClick 事件处理程序。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button1_Click(Source As Object, e As ImageClickEventArgs)
         Span1.InnerHtml = "You clicked button1"
      End Sub
      Sub Button2_Click(Source As Object, e As ImageClickEventArgs)
         Span1.InnerHtml = "You clicked button2"
      End Sub
   </script>
</head>
<body>
    <h3>HtmlInputImage Sample</h3>
    <form runat="server">
        <input type=image
               id="InputImage1"
               src="/images/mango.jpg"
               OnServerClick="Button1_Click"
               runat="server">
        <p>
        <input type=image
               id="InputImage2"
               src="/images/mango.jpg"
               onmouseover="this.src='/images/banana.jpg';"
               onmouseout="this.src='/images/mango.jpg';"
               OnServerClick="Button2_Click"
               runat="server">
        &nbsp;With rollover effect (HTML 4.0)
        <p>
        <span id=Span1 runat="server" />
    </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Button1_Click(object Source, ImageClickEventArgs e)
      {
         Span1.InnerHtml="You clicked button1";
      }
      void Button2_Click(object Source, ImageClickEventArgs e)
      {
         Span1.InnerHtml="You clicked button2";
      }
   </script>
</head>
<body>
    <h3>HtmlInputImage Sample</h3>
    <form runat="server">
        <input type=image
               id="InputImage1"
               src="/images/mango.jpg"
               OnServerClick="Button1_Click"
               runat="server">
        <p>
        <input type=image
               id="InputImage2"
               src="/images/mango.jpg"
               onmouseover="this.src='/images/banana.jpg';"
               onmouseout="this.src='/images/mango.jpg';"
               OnServerClick="Button2_Click"
               runat="server">
        &nbsp;With rollover effect (HTML 4.0)
        <p>
        <span id=Span1 runat="server" />
    </form>
</body>
</html>

HtmlInputText 控件

创建一个服务器端控件,该控件映射到 <input type=text> 和 <input type=password> HTML 元素,并允许您创建单行文本框以接收用户输入。

<input type=text | password
       id="programmaticID"
       maxlength="max#ofcharacters"
       size="widthoftextbox"
       value="defaulttextboxcontents"
       runat="server" >
备注
使用 HtmlInputText 控件对 <input type=text> 和 <input type=password> HTML 元素运行服务器代码。与标准 HTML 一样,这些控件可用于在 HTML 窗体中输入用户名和密码。

注意 当 Type 属性设置为 password 时,输入被在文本框中屏蔽。
可以将此控件与 HtmlInputButton、HtmlInputImage 或 HtmlButton 控件一起使用以在服务器上处理用户输入。通过使用 MaxLength、Size 和 Value 属性,可以分别控制可输入的字符数、控件宽度和控件内容。

注意 此控件不需要结束标记。
示例
下面的示例说明如何创建简单的身份验证方案。此例使用“Web 窗体”页上文本框中的两个值。更高级的方案是针对存储在数据库中的值验证输入的文本。还可以将文本框与验证控件结合使用,以验证用户是否正在文本框中输入正确的信息。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
   <script runat="server">
      Sub SubmitBtn_Click(sender As Object, e as EventArgs)
         If (Name.Value = "UserID") And _
            (Password.Value = "GoldFish") Then
            Message.InnerHtml = "You are authenticated!"
         Else
            Message.InnerHtml = "Login Failed!"
         End If
      End Sub
</script>
<body>
   <form method=post runat="server">
      <h3>Enter Name:
      <input id="Name" type=text size=40 runat="server">
      <h3>Enter Password:
      <input id="Password" type=password size=40 runat="server">
      <input type=submit value="Enter"
             OnServerClick="SubmitBtn_Click" runat="server">
      <h1>
         <span id="Message" runat="server"> </span>
      </h1>
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
   <script runat="server">
      void SubmitBtn_Click(Object sender, EventArgs e)
      {
         if (Name.Value == "UserID" && Password.Value == "GoldFish")
            Message.InnerHtml = "You are authenticated!";
         else
            Message.InnerHtml = "Login Failed!";
      }
   </script>
<body>
   <form method=post runat="server">
      <h3>Enter Name:
      <input id="Name" type=text size=40 runat="server">
      <h3>Enter Password:
      <input id="Password" type=password size=40 runat="server">
      <input type=submit value="Enter"
             OnServerClick="SubmitBtn_Click" runat="server">
      <h1>
         <span id="Message" runat="server"> </span>
      </h1>
   </form>
</body>
</html>

HtmlInputRadioButton 控件

创建一个服务器端控件,该控件映射到 <input type=radio> HTML 元素并允许您在 Web 页上创建单选按钮。

<input type=radio
       id="programmaticID"
       checked
       name="radiobuttongroup"   
       runat="server" >
备注
使用 HtmlInputRadioButton 控件对 HTML <input type=radio> 元素进行编程。通过将 Name 属性设置为组中所有 <input type=radio> 元素所共有的值,可以将多个 HtmlInputRadioButton 控件组成一组。同组中的单选按钮互相排斥;一次只能选择该组中的一个单选按钮。

注意 此控件不需要结束标记。
HtmlRadioButton 控件不会自动向服务器回送。必须依赖于使用某个按钮控件(如 HtmlInputButton、HtmlInputImage 或 HtmlButton)来回送到服务器。可通过为 ServerChange 事件编写处理程序来对 HtmlRadioButton 控件进行编程。

注意 只为更改为选中状态的单选按钮引发 ServerChange 事件。
示例
下面的示例说明如何为 HtmlRadioButton 控件的 ServerChange 事件创建事件处理程序。此事件处理程序确定选择哪个单选按钮并将选定内容显示在消息中。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Server_Change(Source As Object, e As EventArgs)
         If Radio1.Checked = True Then
            Span1.InnerHtml = "Radio1 is checked"
         Else
            If Radio2.Checked = True Then
               Span1.InnerHtml = "Radio2 is checked"
            Else
               If Radio3.Checked = True Then
                  Span1.InnerHtml = "Radio3 is checked"
               End If
            End If
         End If
      End Sub
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlInputRadioButton Sample</h3>
      <input type="radio"
             id="Radio1"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 1<br>
      <input type="radio"
             id="Radio2"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 2<br>
      <input type="radio"
             id="Radio3"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 3
      <p>
      <span id=Span1 runat="server" />
      <p>
      <input type=submit id="Button1"
             value="Enter"
             runat="server">
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Server_Change(object Source, EventArgs e)
      {
         if (Radio1.Checked == true)
            Span1.InnerHtml = "Radio1 is checked";
         else if (Radio2.Checked == true)
            Span1.InnerHtml = "Radio2 is checked";
         else if (Radio3.Checked == true)
            Span1.InnerHtml = "Radio3 is checked";
      }
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlInputRadioButton Sample</h3>
      <input type="radio"
             id="Radio1"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 1<br>
      <input type="radio"
             id="Radio2"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 2<br>
      <input type="radio"
             id="Radio3"
             name="Mode"
             OnServerChange="Server_Change"
             runat="server"/>
      Option 3
      <p>
      <span id=Span1 runat="server" />
      <p>
      <input type=submit id="Button1"
             value="Enter"
             runat="server">
   </form>
</body>
</html>

HtmlSelect 控件

创建一个服务器端控件,该控件映射到 <select> HTML 元素并允许您创建列表控件。
复制内容到剪贴板
代码:
<select id="programmaticID"
        OnServerChange="onserverchangehandler"
        DataSource="databindingsource"
        DataMember="datamembervalue"
        DataTextField="fieldtodatabindoptionttext"
        DataValueField="fieldtodatabindoptionvalue"
        Multiple
        Items="collectionofoptionelements"
        SelectedIndex="indexofcurrentlyselecteditem"
        Size="#ofvisibleitems"
        Value="currentitemvalue"
        runat="server" >
   <option>value1</option>
   <option>value2</option>
</select>
备注
使用 HtmlSelect 控件对 HTML <select> 元素进行编程。默认情况下,此控件呈现为下拉列表框。但是,如果允许多重选择(通过指定 Multiple 属性)或为 Size 属性指定大于 1 的值,则该控件将显示为列表框。

若要确定单选 HtmlSelect 控件中的选定项,首先使用 SelectedItem 属性获取选定项的索引。然后,可以使用此索引从 Items 集合中检索选定项。

若要确定允许同时进行多重选择的 HtmlSelect 控件中的选定项,则需要循环访问 Items 集合并测试每项的 Selected 属性。

还可以将该控件绑定到数据源。设置 DataSource 属性以指定要将其绑定到该控件的数据源。将数据源绑定到控件后,可以通过设置 DataValueField 和 DataTextField 属性,分别指定将哪个字段绑定到 Value 和 Text 属性。

示例
下面的示例使用 HtmlSelect 控件中的项为 span 控件设置背景色。它还显示如何使用 Items 属性将新的选项添加到选择列表中。此属性为 ListItemCollection 类型,因此可以访问该类的 Add 方法。代码示例在 AddToList_Click 事件处理程序中进行此操作。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Apply_Click(Source As Object, e As EventArgs)
         Span1.Style("background-color") = ColorSelect.Value
      End Sub
      Sub AddToList_Click(Source As Object, e As EventArgs)
         ColorSelect.Items.Add(Text1.Value)
      End Sub
   </script>
</head>
<body>
   <h3>HtmlSelect Sample</h3>
   <form runat="server">
      Select a color:<br>
      <select id="ColorSelect" runat="server">
         <option>SkyBlue</option>
         <option>LightGreen</option>
         <option>Gainsboro</option>
         <option>LemonChiffon</option>
      </select>
      <input type="button" runat="server"
             Value="Apply" OnServerClick="Apply_Click">
      <p>
      Don't see your color in the list above?  You can add it here:<br>
      <input type="text" id="Text1" runat="server">
      <input type="button" runat="server"
             Value="Add to List" OnServerClick="AddToList_Click">
      <p>
      <span id="Span1" runat="server">
         Click the button to apply a background color to this span.
      </span>
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Apply_Click(object Source, EventArgs e)
      {
         Span1.Style["background-color"] = ColorSelect.Value;
      }
      void AddToList_Click(object Source, EventArgs e)
      {
         ColorSelect.Items.Add(Text1.Value);
      }
   </script>
</head>
<body>
   <h3>HtmlSelect Sample</h3>
   <form runat="server">
      Select a color:<br>
      <select id="ColorSelect" runat="server">
         <option>SkyBlue</option>
         <option>LightGreen</option>
         <option>Gainsboro</option>
         <option>LemonChiffon</option>
      </select>
      <input type="button" runat="server"
             Value="Apply" OnServerClick="Apply_Click">
      <p>
      Don't see your color in the list above?  You can add it here:<br>
      <input type="text" id="Text1" runat="server">
      <input type="button" runat="server"
             Value="Add to List" OnServerClick="AddToList_Click">
      <p>
      <span id="Span1" runat="server">
         Click the button to apply a background color to this span.
      </span>
   </form>
</body>
</html>
下面的示例显示如何将 HtmlSelect 控件绑定到在 Page_Load 事件中声明的 ArrayList。当用户在呈现页上单击 HtmlInputButton 控件时,也会出现 SubmitBtn_Click 事件,它显示选定的数据绑定值。

选择控件的 Id 属性为 StateSelect,而控件的 DataSource 属性设置为 ArrayList 在加载页时创建的值。然后,选择控件的 DataBind 方法将 ArrayList 中的值绑定到控件本身。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Page_Load(Sender As Object, e As EventArgs)
         If Not IsPostBack Then
            Dim values As New ArrayList()
            values.Add("IN")
            values.Add("KS")
            values.Add("MD")
            values.Add("MI")
            values.Add("OR")
            values.Add("TN")
            StateSelect.DataSource = values
            StateSelect.DataBind()
         End If
      End Sub
      Sub SubmitBtn_Click(sender As Object, e As EventArgs)
         Span1.InnerHtml = "You chose: " & StateSelect.Value
      End Sub
   </script>
</head>
<body>
   <h3>Data Binding to an HtmlSelect Control</h3>
   <form runat="server">
      Select a state:<br>
      <select id="StateSelect" runat="server" />
      <input type="submit" value="Display Selected State"
             OnServerClick="SubmitBtn_Click" runat="server">
      <p>
      <span id="Span1" runat="server" />
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Page_Load(Object Sender, EventArgs e)
      {
         if (!IsPostBack)
         {
            ArrayList values = new ArrayList();
            values.Add ("IN");
            values.Add ("KS");
            values.Add ("MD");
            values.Add ("MI");
            values.Add ("OR");
            values.Add ("TN");
            StateSelect.DataSource = values;
            StateSelect.DataBind();
         }
      }   
      void SubmitBtn_Click(Object sender, EventArgs e)
      {
         Span1.InnerHtml = "You chose: " + StateSelect.Value;
      }
   </script>
</head>
<body>
   <h3>Data Binding to an HtmlSelect Control</h3>
   <form runat="server">
      Select a state:<br>
      <select id="StateSelect" runat="server" />
      <input type="submit" value="Display Selected State"
             OnServerClick="SubmitBtn_Click" runat="server">
      <p>
      <span id="Span1" runat="server" />
   </form>
</body>
</html>

创建一个服务器端控件,该控件映射到 <table> HTML 元素并允许您创建表。
复制内容到剪贴板
代码:
<table id="programmaticID"
       align=left | center | right
       bgcolor="bgcolor"
       border="borderwidthinpixels"
       bordercolor="bordercolor"
       cellpadding="spacingwithincellsinpixels"
       cellspacing="spacingbetweencellsinpixels"
       height="tableheight"
       rows="collectionofrows"
       width="tablewidth"
       runat="server" >
   <tr>
      <td></td>
   </tr>
</table>
备注
使用 HtmlTable 控件对 HTML <table> 元素进行编程。HtmlTable 控件由一个表的 Rows 集合中存储的行(由 HtmlTableRow 对象表示)组成。每行均由存储在行的 Cells 集合中的单元格(由 HtmlTableCell 对象表示)组成。

若要创建表,首先应在页上的窗体中声明一个 HtmlTable 控件。然后,将 HtmlTableRow 对象放置在 HtmlTable 控件的开始和结束标记之间(对于表中所需的每一行放置一个对象)。定义表中的行之后,声明位于每个 HtmlTableRow 对象的开始和结束标记之间的 HtmlTableCell 对象以创建该行的单元格。

注意 请确保每行和每列中的单元格的个数正确,否则该表可能不会按预期的方式显示。一般情况下,每行应具有相同个数的单元格。同样,每列也应具有相同个数的单元格。如果要延伸单元格,则每行都应具有相同的宽度,而每列都应具有相同的高度。
HtmlTable 控件允许您自定义表的外观。通过设置 BgColor、Border、BorderColor、Height 和 Width 属性,可以分别指定表的背景色、边框宽度、边框颜色、表高度和表宽度。通过设置 CellSpacing 和 CellPadding 属性,还可以控制单元格间的间距以及单元格内容与单元格边框间的间距。

示例
下面的示例基于用户在两个 HtmlSelect 控件中的选择生成表行和表单元格。每次加载页时,该代码会检查以了解用户已在 HtmlSelect 控件中选择了何值。基于这些值动态生成 HtmlTable 控件中的行数和列数。若要构造表,请创建该表的行(由 HtmlTableRow 对象表示)并将它们添加到 HtmlTable 控件的 Rows 集合中。若要构造行,请创建该行的单元格(由 HtmlTableCell 对象表示)并将它们添加到 HtmlTableRow 的 Cells 集合中。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Page_Load(sender As Object, e As EventArgs)
         Dim row As Integer = 0
         ' Generate rows and cells.
         Dim numrows As Integer = Convert.ToInt32(Select1.Value)
         Dim numcells As Integer = Convert.ToInt32(Select2.Value)
         Dim j As Integer
         For j = 0 To numrows - 1
            Dim r As New HtmlTableRow()
            ' Set bgcolor on alternating rows.
            If row Mod 2 = 1 Then
               r.BgColor = "Gainsboro"
            End If
            row += 1
            Dim i As Integer
            For i = 0 To numcells - 1
               Dim c As New HtmlTableCell()
               c.Controls.Add(New LiteralControl("row " & j.ToString() & _
                                                ", cell " & i.ToString()))
               r.Cells.Add(c)
            Next i
            Table1.Rows.Add(r)
         Next j
      End Sub
   </script>
</head>
<body>  
   <h3>HtmlTable Example</h3>
   <form runat="server">
      <p>
      <table id="Table1"
             CellPadding=5
             CellSpacing=0
             Border="1"
             BorderColor="black"
             runat="server" />
      <p>
      Table rows:
      <select id="Select1" runat="server">
         <option Value="1">1</option>
         <option Value="2">2</option>
         <option Value="3">3</option>
         <option Value="4">4</option>
         <option Value="5">5</option>
      </select>
      <br>
      Table cells:
      <select id="Select2" runat="server">
         <option Value="1">1</option>
         <option Value="2">2</option>
         <option Value="3">3</option>
         <option Value="4">4</option>
         <option Value="5">5</option>
      </select>
      <input type="submit" value="Generate Table" runat="server">
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Page_Load(Object sender, EventArgs e)
      {
         int row = 0;
         // Generate rows and cells.
         int numrows = Convert.ToInt32(Select1.Value);
         int numcells = Convert.ToInt32(Select2.Value);
         for (int j=0; j<numrows; j++)
         {
            HtmlTableRow r = new HtmlTableRow();
            // Set bgcolor on alternating rows.
            if (row%2 == 1)
               r.BgColor="Gainsboro";
            row++;
            for (int i=0; i<numcells; i++)
            {
               HtmlTableCell c = new HtmlTableCell();
               c.Controls.Add(new LiteralControl("row " + j.ToString() +
                              ", cell " + i.ToString()));
               r.Cells.Add(c);
            }
            Table1.Rows.Add(r);
         }
      }
   </script>
</head>
<body>  
   <h3>HtmlTable Example</h3>
   <form runat="server">
      <p>
      <table id="Table1"
             CellPadding=5
             CellSpacing=0
             Border="1"
             BorderColor="black"
             runat="server" />
      <p>
      Table rows:
      <select id="Select1" runat="server">
         <option Value="1">1</option>
         <option Value="2">2</option>
         <option Value="3">3</option>
         <option Value="4">4</option>
         <option Value="5">5</option>
      </select>
      <br>
      Table cells:
      <select id="Select2" runat="server">
         <option Value="1">1</option>
         <option Value="2">2</option>
         <option Value="3">3</option>
         <option Value="4">4</option>
         <option Value="5">5</option>
      </select>
      <input type="submit" value="Generate Table" runat="server">
   </form>
</body>
</html>

HtmlTableCell 控件

创建一个服务器端控件,该控件映射到 <td> 和 <th> HTML 元素并允许您操作表中的单元格。
复制内容到剪贴板
代码:
<td or th id="programmaticID"
          align="alignmentofcontentincell"
          bgcolor="bgcolor"
          bordercolor="bordercolor"
          colspan="#ofcolscellspans"
          height="cellheight"
          nowrap="True | False"
          rowspan="#ofrowscellspans"
          valign="vertalignmentofcellcontent"
          width="cellwidth">
CellContent
</td or /th>
备注
使用 HtmlTableCell 类对 <td> 和 <th> HTML 元素进行编程。<td> 元素表示数据单元格,而 <th> 元素表示标题单元格。请注意,<th> 单元格的内容始终为粗体并居中。

HtmlTableCell 类使您可以控制各个独立单元格的外观。通过设置 BgColor、BorderColor、Height 和 Width 属性,可以分别控制单元格的背景色、边框颜色、高度和宽度。

注意 同一行中的所有单元格具有相同的高度。一行中最高的单元格确定该行中所有单元格的高度。
通过设置 Align 和 VAlign 属性,分别控制单元格内容的水平和垂直对齐方式。通过设置 NoWrap 属性,还可以指定文本是否自动在单元格的下一行上继续。

HtmlTableCell 类使您可以通过设置 ColSpan 和 RowSpan 属性来延伸单元格。ColSpan 属性使您可以控制一个单元格占据的列数,而 rowspan 属性则指定一个单元格占据的行数。

注意 延伸单元格时,请确保表中的每行具有相同的长度。还应确保每列具有相同的高度。否则,表可能不会按预期的方式显示。
示例
下面的示例说明如何使用 HtmlTableCell 对象修改 HtmlTable 控件中的单元格的内容。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button_Click(sender As Object, e As EventArgs)
      
         Dim i As Integer
         Dim j As Integer
         ' Iterate through the rows of the table.
         For i=0 To Table1.Rows.Count - 1
            ' Iterate through the cells of a row.      
            For j=0 To Table1.Rows(i).Cells.Count - 1
            
               ' Change the inner HTML of the cell.
               Table1.Rows(i).Cells(j).InnerHtml = "Row " & i.ToString() _
                                                   & ", Column " & _
                                                   j.ToString()
            Next j
         Next i
      End Sub
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlTableCell Example</h3>
      <table id="Table1"
             Border="1"
             BorderColor="black"
             runat="server">
         <tr>
            <td>
               Cell 1
            </td>
            <td>
               Cell 2
            </td>
         </tr>
         <tr>
            <td>
               Cell 3
            </td>
            <td>
               Cell 4
            </td>
         </tr>
      </table>
      <br><br>
  
      <input type="button"
             value="Change Table Contents"
             OnServerClick = "Button_Click"
             runat="server"/>
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Button_Click(Object sender, EventArgs e)
      {
         // Iterate through the rows of the table.
         for (int i=0; i<=Table1.Rows.Count - 1; i++)
         {
            // Iterate through the cells of a row.
            for (int j=0; j<=Table1.Rows[i].Cells.Count - 1; j++)
            {
               // Change the inner HTML of the cell.
               Table1.Rows[i].Cells[j].InnerHtml = "Row " + i.ToString() +
                                                   ", Column " +
                                                   j.ToString();
            }
         }
      }
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlTableCell Example</h3>
      <table id="Table1"
             Border="1"
             BorderColor="black"
             runat="server">
         <tr>
            <td>
               Cell 1
            </td>
            <td>
               Cell 2
            </td>
         </tr>
         <tr>
            <td>
               Cell 3
                         </td>
            <td>
               Cell 4
            </td>
         </tr>
      </table>
      <br><br>
  
      <input type="button"
             value="Change Table Contents"
             OnServerClick = "Button_Click"
             runat="server"/>
   </form>
</body>
</html>

HtmlTableRow 控件

创建一个服务器端控件,该控件映射到 <tr> HTML 元素并允许您创建和操作表中的行。
复制内容到剪贴板
代码:
<tr id="programmaticID"
    align="tablecontentalignment"
    bgcolor="tablebgcolor"
    bordercolor="bordercolor"
    height="tableheight"
    cells="collectionoftablecells"
    valign="verticalalignmentofrowcontent" >
   <td>cellcontent</td>
   <td>cellcontent</td>
   <td>cellcontent</td>
</tr>
备注
使用 HtmlTableRow 类对 <tr> HTML 元素进行编程。<tr> 元素表示表中的行。

HtmlTableRow 类使您可以控制表中各个独立行的外观。通过设置 BgColor、BorderColor 和 Height 属性,可以分别控制该行的背景色、边框颜色和高度。

通过设置 Align 和 VAlign 属性分别控制行中单元格内容的水平和垂直对齐方式。

表中的每行都包含一个 Cells 集合,该集合对于该行中的每个单元格都包含一个 HtmlTableCell。

示例
下面的示例说明如何使用 HtmlTableCell 修改 HtmlTable 控件中的单元格的内容。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub Button_Click(sender As Object, e As EventArgs)
      
         Dim i As Integer
         Dim j As Integer
         ' Iterate through the rows of the table.
         For i=0 To Table1.Rows.Count - 1
            ' Iterate through the cells of a row.      
            For j=0 To Table1.Rows(i).Cells.Count - 1
            
               ' Change the inner HTML of the cell.
               Table1.Rows(i).Cells(j).InnerHtml = "Row " & i.ToString() _
                                                   & ", Column " & _
                                                   j.ToString()
            Next j
         Next i
      End Sub
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlTableCell Example</h3>
      <table id="Table1"
             Border="1"
             BorderColor="black"
             runat="server">
         <tr>
            <td>
               Cell 1
            </td>
            <td>
               Cell 2
            </td>
         </tr>
         <tr>
            <td>
               Cell 3
            </td>
            <td>
               Cell 4
            </td>
         </tr>
      </table>
      <br><br>
  
      <input type="button"
             value="Change Table Contents"
             OnServerClick = "Button_Click"
             runat="server"/>
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void Button_Click(Object sender, EventArgs e)
      {
         // Iterate through the rows of the table.
         for (int i=0; i<=Table1.Rows.Count - 1; i++)
         {
            // Iterate through the cells of a row.
            for (int j=0; j<=Table1.Rows[i].Cells.Count - 1; j++)
            {
               // Change the inner HTML of the cell.
               Table1.Rows[i].Cells[j].InnerHtml = "Row " + i.ToString() +
                                                   ", Column " +
                                                   j.ToString();
            }
         }
      }
   </script>
</head>
<body>
   <form runat="server">
      <h3>HtmlTableCell Example</h3>
      <table id="Table1"
             Border="1"
             BorderColor="black"
             runat="server">
         <tr>
            <td>
               Cell 1
            </td>
            <td>
               Cell 2
            </td>
         </tr>
         <tr>
            <td>
               Cell 3
            </td>
            <td>
               Cell 4
            </td>
         </tr>
      </table>
      <br><br>
  
      <input type="button"
             value="Change Table Contents"
             OnServerClick = "Button_Click"
             runat="server"/>
   </form>
</body>
</html>

HtmlTextArea 控件

创建一个服务器端控件,该控件映射到 <textarea> HTML 元素并允许您创建多行文本框。
复制内容到剪贴板
代码:
<textarea id="programmaticID"
          cols="numberofcolsintextarea"
          name="namepassedtobrowser"
          rows="numberofrowsintextarea"
          onserverchange="onserverchangehandler"
          runat="server" >
textareacontent
</textarea>
备注
使用 HtmlTextArea 控件对 HTML <textarea> 元素进行编程。此控件使您可以创建多行文本框。文本框的尺寸由 Cols 和 Rows 属性控制。Cols 属性确定控件的宽度,而 Rows 属性确定控件的高度。

HtmlTextArea 控件包含 ServerChange 事件,当控件的内容在对服务器进行发送之间更改时,将引发该事件。该事件通常用于验证在控件中输入的文本。

示例
下面的示例说明如何使用 HtmlInputButton 控件的 OnServerClick 事件处理程序显示 HtmlTextArea 控件的用户输入。此文本由“Web 窗体”页中的 span 控件显示。可以使用类似的技术在服务器上存储文本区域的值。
复制内容到剪贴板
代码:
[Visual Basic]
<%@ Page Language="VB" %>
<html>
<head>
   <script runat="server">
      Sub SubmitBtn_Click(sender As Object, e As EventArgs)
         Span1.InnerHtml = "You wrote: <br>" & TextArea1.Value
      End Sub
   </script>
</head>
<body>
   <h3>HtmlTextArea Example</h3>
   <form runat=server>
      What do you like best about ASP.NET?: <br>
      <textarea id="TextArea1" cols=40 rows=4 runat=server />
      <input type=submit value="Submit"
             OnServerClick="SubmitBtn_Click" runat=server>
      <p>
      <span id="Span1" runat="server" />
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" %>
<html>
<head>
   <script runat="server">
      void SubmitBtn_Click(Object sender, EventArgs e)
      {
         Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value;
      }
   </script>
</head>
<body>
   <h3>HtmlTextArea Example</h3>
   <form runat=server>
      What do you like best about ASP.NET?: <br>
      <textarea id="TextArea1" cols=40 rows=4 runat=server />
      <input type=submit value="Submit"
             OnServerClick="SubmitBtn_Click" runat=server>
      <p>
      <span id="Span1" runat="server" />
   </form>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值