TextBox.AutoPostBack 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值表示 TextBox 控件失去焦点时是否发生自动回发到服务器的操作。
public:
virtual property bool AutoPostBack { bool get(); void set(bool value); };
public virtual bool AutoPostBack { get; set; }
[System.Web.UI.Themeable(false)]
public virtual bool AutoPostBack { get; set; }
member this.AutoPostBack : bool with get, set
[<System.Web.UI.Themeable(false)>]
member this.AutoPostBack : bool with get, set
Public Overridable Property AutoPostBack As Boolean
属性值
如果 TextBox 控件失去焦点时发生自动回发,则为 true
;否则为 false
。 默认值为 false
。
- 属性
示例
以下示例演示如何使用 AutoPostBack 属性在控件失去焦点时 TextBox 自动显示文本框中输入的值的总和。
重要
此示例具有一个接受用户输入的文本框,这是一个潜在的安全威胁。 默认情况下,ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。 有关详细信息,请参阅脚本侵入概述。
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> TextBox Example </title>
<script runat="server">
protected void Page_Load(Object sender, EventArgs e)
{
int Answer;
// Due to a timing issue with when page validation occurs, call the
// Validate method to ensure that the values on the page are valid.
Page.Validate();
// Add the values in the text boxes if the page is valid.
if(Page.IsValid)
{
Answer = Convert.ToInt32(Value1.Text) + Convert.ToInt32(Value2.Text);
AnswerMessage.Text = Answer.ToString();
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> TextBox Example </h3>
<table>
<tr>
<td colspan="5">
Enter integer values into the text boxes. <br />
The two values are automatically added <br />
when you tab out of the text boxes. <br />
</td>
</tr>
<tr>
<td colspan="5">
</td>
</tr>
<tr align="center">
<td>
<asp:TextBox ID="Value1"
Columns="2"
MaxLength="3"
AutoPostBack="True"
Text="1"
runat="server"/>
</td>
<td>
+
</td>
<td>
<asp:TextBox ID="Value2"
Columns="2"
MaxLength="3"
AutoPostBack="True"
Text="1"
runat="server"/>
</td>
<td>
=
</td>
<td>
<asp:Label ID="AnswerMessage"
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:RequiredFieldValidator
ID="Value1RequiredValidator"
ControlToValidate="Value1"
ErrorMessage="Please enter a value.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
<asp:RangeValidator
ID="Value1RangeValidator"
ControlToValidate="Value1"
Type="Integer"
MinimumValue="1"
MaximumValue="100"
ErrorMessage="Please enter an integer <br /> between than 1 and 100.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
</td>
<td colspan="2">
<asp:RequiredFieldValidator
ID="Value2RequiredValidator"
ControlToValidate="Value2"
ErrorMessage="Please enter a value.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
<asp:RangeValidator
ID="Value2RangeValidator"
ControlToValidate="Value2"
Type="Integer"
MinimumValue="1"
MaximumValue="100"
ErrorMessage="Please enter an integer <br /> between than 1 and 100.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
</td>
<td>
 
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> TextBox Example </title>
<script runat="server">
Protected Sub Page_Load(sender As Object, e As EventArgs)
Dim Answer As Integer
' Due to a timing issue with when page validation occurs, call the
' Validate method to ensure that the values on the page are valid.
Page.Validate()
' Add the values in the text boxes if the page is valid.
If Page.IsValid Then
Answer = Convert.ToInt32(Value1.Text) + Convert.ToInt32(Value2.Text)
AnswerMessage.Text = Answer.ToString()
End If
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> TextBox Example </h3>
<table>
<tr>
<td colspan="5">
Enter integer values into the text boxes. <br />
The two values are automatically added <br />
when you tab out of the text boxes. <br />
</td>
</tr>
<tr>
<td colspan="5">
</td>
</tr>
<tr align="center">
<td>
<asp:TextBox ID="Value1"
Columns="2"
MaxLength="3"
AutoPostBack="True"
Text="1"
runat="server"/>
</td>
<td>
+
</td>
<td>
<asp:TextBox ID="Value2"
Columns="2"
MaxLength="3"
AutoPostBack="True"
Text="1"
runat="server"/>
</td>
<td>
=
</td>
<td>
<asp:Label ID="AnswerMessage"
runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:RequiredFieldValidator
ID="Value1RequiredValidator"
ControlToValidate="Value1"
ErrorMessage="Please enter a value.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
<asp:RangeValidator
ID="Value1RangeValidator"
ControlToValidate="Value1"
Type="Integer"
MinimumValue="1"
MaximumValue="100"
ErrorMessage="Please enter an integer <br /> between than 1 and 100.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
</td>
<td colspan="2">
<asp:RequiredFieldValidator
ID="Value2RequiredValidator"
ControlToValidate="Value2"
ErrorMessage="Please enter a value.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
<asp:RangeValidator
ID="Value2RangeValidator"
ControlToValidate="Value2"
Type="Integer"
MinimumValue="1"
MaximumValue="100"
ErrorMessage="Please enter an integer <br /> between than 1 and 100.<br />"
EnableClientScript="False"
Display="Dynamic"
runat="server"/>
</td>
<td>
 
</td>
</tr>
</table>
</form>
</body>
</html>
注解
AutoPostBack使用 属性指定在控件失去焦点时TextBox是否自动回发到服务器。 在控件中 TextBox 按 Enter 或 Tab 键是更改焦点的最常见方法。
注意
例如, TextBox 如果控件的父容器包含标记为默认按钮的按钮 (如果容器的 DefaultButton 或 DefaultButton 属性设置为) ,则不会引发默认按钮 Click
的事件以响应自动回发。
无法通过主题或样式表主题设置此属性。 有关详细信息,请参阅 ThemeableAttribute 和 ASP.NET 主题和皮肤。