次の方法で共有


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

プロパティ値

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

属性

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

注意

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

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。 既定では、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>

注釈

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

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

注意

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

注意

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

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

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

適用対象

こちらもご覧ください