WebControl.Enabled プロパティ

定義

Web サーバー コントロールを有効にするかどうかを示す値を取得または設定します。

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

プロパティ値

Boolean

コントロールを有効にする場合は true。それ以外の場合は false。 既定値は、true です。

属性

次の例では、基本クラスから継承されたコントロールのプロパティを TextBox プログラムで設定することで、コントロールを WebControl 有効または無効にする方法を Enabled 示します。

注意

次のコード サンプルでは、単一ファイルのコード モデルを使用します。分離コード ファイルに直接コピーすると、正しく動作しない場合があります。 このコード サンプルは、拡張子が .aspx の空のテキスト ファイルにコピーする必要があります。 Web Forms コード モデルの詳細については、「ASP.NET Web Forms ページ コード モデル」を参照してください。

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。

<%@ 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>

注釈

コントロールのプロパティが Enabled 設定 falseされている場合、通常、コントロールは淡色表示されます。 コントロールが入力要素の場合、ブラウザーはユーザーがコントロールをクリックまたは入力できないようにします。 サーバー コントロールに対してレンダリングされる HTML 要素は、属性または CSS class 属性をdisabled設定することで無効としてマークされます。 詳細については、次のトピックを参照してください。 SupportsDisabledAttribute および ControlRenderingCompatibilityVersion

このプロパティは、コントロール階層の下に伝達されます。 コンテナー コントロールを無効にすると、そのコンテナー内の子コントロールも無効になります。 詳細については、IsEnabled プロパティを参照してください。

注意

カスタム複合コントロールでは、この継承動作は、子コントロールをまだ作成していないコントロールには適用されません。 子コントロールの作成時に有効な状態を設定するか、プロパティを Enabled オーバーライドしてメソッドを呼び出す EnsureChildControls 必要があります。

注意

コントロールを無効にすると、ブラウザー UI を介したユーザーによるコントロールとの対話のみが防止されます。 ユーザーは、ページ上のコントロールが無効になっている場合でも、ページによって処理されるポストバックを送信する要求を作成できます。 ポストバック要求を処理する前に、コントロールが有効で表示されていることを確認します。

すべてのコントロールでこのプロパティがサポートされているわけではありません。 詳細については、個々のコントロールを参照してください。

このプロパティは、テーマまたはスタイル シート テーマによって設定することはできません。 詳細については、テーマとスキンの ASP.NET を参照してくださいThemeableAttribute

適用対象

こちらもご覧ください