WebControl.Enabled WebControl.Enabled WebControl.Enabled WebControl.Enabled Property

定義

Web サーバー コントロールを有効にするかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the Web server control is enabled.

public:
 virtual property bool Enabled { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public virtual bool Enabled { get; set; }
member this.Enabled : bool with get, set
Public Overridable Property Enabled As Boolean

プロパティ値

コントロールを有効にする場合は true。それ以外の場合は falsetrue if control is enabled; otherwise, false. 既定値は、true です。The default is true.

次の例は、 TextBox WebControl基本クラスから継承されたコントロールを有効または無効にする方法Enabledを示しています。そのためには、プログラムを使用してプロパティを設定します。The following example illustrates how to enable and disable a TextBox control, inherited from the WebControl base class, by setting its Enabled property programmatically.

注意

次のコードサンプルでは、単一ファイルのコードモデルを使用して、分離コードファイルに直接コピーした場合、正しく機能しない可能性があります。The following code sample uses the single-file code model and may not work correctly if copied directly into a code-behind file. このコードサンプルは、.aspx 拡張子を持つ空のテキストファイルにコピーする必要があります。This code sample must be copied into an empty text file that has an .aspx extension. Web フォームコードモデルの詳細については、「 ASP.NET Web Forms Page Code model」を参照してください。For more information on the Web Forms code model, see ASP.NET Web Forms Page Code Model.

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。This example has a text box that accepts user input, which is a potential security threat. 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。By default, ASP.NET Web pages validate that user input does not include script or HTML elements. 詳細については、「スクリプトによる攻略の概要」を参照してください。For more information, see Script Exploits Overview.

<%@ 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">
    void SubmitBtn1_Click(object sender, EventArgs e)
    {
        TextBox1.Enabled = (!TextBox1.Enabled);
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Enabled Property Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h3>Enabled Property of a Web Control</h3>
            <p>
                <asp:TextBox id="TextBox1" BackColor="LightBlue" 
                    runat="server">Light Blue</asp:TextBox>
            </p>
            <p>
                <asp:TextBox id="TextBox2" BackColor="LightGreen" 
                    runat="server">Light Green</asp:TextBox>
            </p>
            <asp:Button id="SubmitBtn1" runat="server"
                Text="Click to disable or enable the light blue text box" 
                OnClick="SubmitBtn1_Click" />
    </div>
    </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">
    Sub SubmitBtn1_Click(ByVal sender As Object, ByVal e As EventArgs)
        TextBox1.Enabled = Not (TextBox1.Enabled)
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
    <title>Enabled Property Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h3>Enabled Property of a Web Control</h3>
            <p>
                <asp:TextBox id="TextBox1" BackColor="LightBlue" 
                    runat="server">Light Blue</asp:TextBox>
            </p>
            <p>
                <asp:TextBox id="TextBox2" BackColor="LightGreen" 
                    runat="server">Light Green</asp:TextBox>
            </p>
            <asp:Button id="SubmitBtn1" runat="server"
                Text="Click to disable or enable the light blue text box" 
                OnClick="SubmitBtn1_Click" />
    </div>
    </form>
</body>
</html>

注釈

falseコントロールのEnabledプロパティがに設定されている場合、通常、コントロールは淡色表示になります。When the Enabled property of a control is set to false, the control typically appears dimmed. コントロールが入力要素である場合、ブラウザーはユーザーがクリックしたり入力したりできないようにします。If the control is an input element, the browser prevents the user from clicking or typing in it. サーバーコントロール用に表示される HTML 要素は、 disabled属性またはその CSS class属性を設定することによって、無効としてマークされます。HTML elements that are rendered for a server control are marked as disabled by setting their disabled attribute or their CSS class attribute. 詳細については、次のトピックを参照してください。 SupportsDisabledAttribute および ControlRenderingCompatibilityVersionFor more information, see SupportsDisabledAttribute and ControlRenderingCompatibilityVersion.

このプロパティは、コントロール階層の下位に伝達されます。This property propagates down the control hierarchy. コンテナーコントロールを無効にすると、そのコンテナー内の子コントロールも無効になります。If you disable a container control, the child controls within that container are also disabled. 詳細については、IsEnabled プロパティを参照してください。For more information, see the IsEnabled property.

注意

カスタム複合コントロールでは、この継承動作は、子コントロールをまだ作成していないコントロールには適用されません。In a custom composite control, this inheritance behavior does not apply to controls that have not yet created their child controls. 子コントロールが作成されたときに、そのコントロールの有効状態を設定するかEnabled 、プロパティをオーバーライドEnsureChildControlsしてメソッドを呼び出す必要があります。You must either set the enabled state of the child controls when they are created, or override the Enabled property to call the EnsureChildControls method.

注意

コントロールを無効にすると、ユーザーがブラウザー UI を通じてコントロールを操作できなくなります。Disabling a control only prevents interaction with the control by the user through the browser UI. ユーザーは、ページ上のコントロールが無効になっている場合でも、ページによって処理されるポストバックを送信する要求を行うことができます。It is possible for a user to craft a request that submits a postback that is processed by the page even if controls on the page are disabled. ポストバック要求を処理する前に、コントロールが有効で表示されていることを確認してください。Before you process a postback request, check to make sure that the control is enabled and visible.

このプロパティをサポートしていないコントロールがあります。Not all controls support this property. 詳細については、個々のコントロールを参照してください。See the individual controls for details.

このプロパティは、テーマまたはスタイル シート テーマによって設定することはできません。This property cannot be set by themes or style sheet themes. 詳細についてはThemeableAttribute 、「」および「 ASP.NET theme and スキン」を参照してください。For more information, see ThemeableAttribute and ASP.NET Themes and Skins.

適用対象

こちらもご覧ください