TextBox.ReadOnly Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia wartość wskazującą, czy można zmienić zawartość kontrolki TextBox .
public:
virtual property bool ReadOnly { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(true)]
public virtual bool ReadOnly { get; set; }
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public virtual bool ReadOnly { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.ReadOnly : bool with get, set
[<System.ComponentModel.Bindable(true)>]
[<System.Web.UI.Themeable(false)>]
member this.ReadOnly : bool with get, set
Public Overridable Property ReadOnly As Boolean
Wartość właściwości
true
jeśli nie można zmienić zawartości kontrolki TextBox ; w przeciwnym razie false
. Wartość domyślna to false
.
- Atrybuty
Przykłady
W poniższym przykładzie kodu pokazano, jak za pomocą ReadOnly właściwości zapobiec wszelkim zmianom tekstu wyświetlanego w kontrolce TextBox .
Ważne
Ten przykład zawiera pole tekstowe, które akceptuje dane wejściowe użytkownika, co jest potencjalnym zagrożeniem bezpieczeństwa. Domyślnie ASP.NET strony sieci Web sprawdzają, czy dane wejściowe użytkownika nie zawierają skryptów ani elementów HTML. Aby uzyskać więcej informacji, zobacz Script Exploits Overview (Omówienie luk w zabezpieczeniach skryptów).
<%@ 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> MultiLine TextBox Example </title>
<script runat="server">
protected void SubmitButton_Click(Object sender, EventArgs e)
{
Message.Text = "Thank you for your comment: <br />" + Comment.Text;
}
protected void Check_Change(Object sender, EventArgs e)
{
Comment.Wrap = WrapCheckBox.Checked;
Comment.ReadOnly = ReadOnlyCheckBox.Checked;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> MultiLine TextBox Example </h3>
Please enter a comment and click the submit button.
<br /><br />
<asp:TextBox ID="Comment"
TextMode="MultiLine"
Columns="50"
Rows="5"
runat="server"/>
<br />
<asp:RequiredFieldValidator
ID="Value1RequiredValidator"
ControlToValidate="Comment"
ErrorMessage="Please enter a comment.<br />"
Display="Dynamic"
runat="server"/>
<asp:CheckBox ID="WrapCheckBox"
Text="Wrap Text"
Checked="True"
AutoPostBack="True"
OnCheckedChanged="Check_Change"
runat="server"/>
<asp:CheckBox ID="ReadOnlyCheckBox"
Text="ReadOnly"
Checked="False"
AutoPostBack="True"
OnCheckedChanged="Check_Change"
runat="server"/>
<asp:Button ID="SubmitButton"
Text="Submit"
OnClick="SubmitButton_Click"
runat="server"/>
<hr />
<asp:Label ID="Message"
runat="server"/>
</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> MultiLine TextBox Example </title>
<script runat="server">
Protected Sub SubmitButton_Click(sender As Object, e As EventArgs )
Message.Text = "Thank you for your comment: <br />" + Comment.Text
End Sub
Protected Sub Check_Change(sender As Object, e As EventArgs )
Comment.Wrap = WrapCheckBox.Checked
Comment.ReadOnly = ReadOnlyCheckBox.Checked
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3> MultiLine TextBox Example </h3>
Please enter a comment and click the submit button.
<br /><br />
<asp:TextBox ID="Comment"
TextMode="MultiLine"
Columns="50"
Rows="5"
runat="server"/>
<br />
<asp:RequiredFieldValidator
ID="Value1RequiredValidator"
ControlToValidate="Comment"
ErrorMessage="Please enter a comment.<br />"
Display="Dynamic"
runat="server"/>
<asp:CheckBox ID="WrapCheckBox"
Text="Wrap Text"
Checked="True"
AutoPostBack="True"
OnCheckedChanged="Check_Change"
runat="server"/>
<asp:CheckBox ID="ReadOnlyCheckBox"
Text="ReadOnly"
Checked="False"
AutoPostBack="True"
OnCheckedChanged="Check_Change"
runat="server"/>
<asp:Button ID="SubmitButton"
Text="Submit"
OnClick="SubmitButton_Click"
runat="server"/>
<hr />
<asp:Label ID="Message"
runat="server"/>
</form>
</body>
</html>
Uwagi
ReadOnly Użyj właściwości , aby określić, czy można zmienić zawartość kontrolkiTextBox. Ustawienie tej właściwości w taki sposób, aby true
uniemożliwiło użytkownikom wprowadzanie wartości lub zmianę istniejącej wartości. Należy pamiętać, że użytkownik kontrolki TextBox nie może zmienić tej właściwości; tylko deweloper może.
Ważne
Text Wartość kontrolki TextBox z ReadOnly właściwością ustawioną na true
jest wysyłana do serwera po wystąpieniu ogłaszania zwrotnego, ale serwer nie przetwarza pola tekstowego tylko do odczytu. Uniemożliwia to złośliwemu użytkownikowi zmianę Text wartości, która jest tylko do odczytu. Wartość Text właściwości jest zachowywana w stanie widoku między ogłaszaniami zwrotnymi, chyba że zostanie zmodyfikowana przez kod po stronie serwera.
Tej właściwości nie można ustawić za pomocą motywów ani motywów arkusza stylów. Aby uzyskać więcej informacji, zobacz ThemeableAttribute tematy i ASP.NET motywy i skórki.