WebPart.AllowClose プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > WebPart.AllowClose プロパティの意味・解説 

WebPart.AllowClose プロパティ

メモ : このプロパティは、.NET Framework version 2.0 で新しく追加されたものです。

エンド ユーザーが Web ページで WebPart コントロールを終了できるかどうかを示す値を取得または設定します。

名前空間: System.Web.UI.WebControls.WebParts
アセンブリ: System.Web (system.web.dll 内)
構文構文

<ThemeableAttribute(False)> _
Public Overridable Property
 AllowClose As Boolean
Dim instance As WebPart
Dim value As Boolean

value = instance.AllowClose

instance.AllowClose = value
[ThemeableAttribute(false)] 
public virtual bool AllowClose { get;
 set; }
[ThemeableAttribute(false)] 
public:
virtual property bool AllowClose {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_AllowClose ()

/** @property */
public void set_AllowClose (boolean value)

プロパティ値
Web ページでコントロールを終了できる場合は true。それ以外の場合は false。既定値は true です。

解説解説

ユーザーが Web ページで WebPart を終了した後は、コントロールをページで表示したり利用したりすることはできなくなります。終了したコントロールは、ページ カタログに追加されます。これは、コントロールへの参照を格納する Web パーツ エンティティです。開発者が CatalogZone コントロール内のページに PageCatalogPart コントロールを追加している場合、ユーザーはページをカタログ表示モードに切り替え、ページ カタログ内の終了したコントロールを選択し、それをページに戻すことができます。

メモメモ

終了した WebPart コントロールは、プログラムによって、またはページがカタログ表示モードの場合にユーザーがページ カタログから終了したコントロールを選択することによって、ページに戻すことができます。

WebPart コントロールの終了は、コントロールの削除とは異なります。終了したコントロールをページに戻すことはできますが、削除したコントロールは完全に削除されます。コントロールの削除の詳細については、DeleteWebPart メソッドのトピックを参照してください。 コントロールの終了は、コントロールの非表示とも異なります。コントロールは、非表示であってもページには存在し、ページの有効期限のイベントにも参加しています。ただ、ユーザーのビューに表示されないだけです。しかし、終了したコントロールはページへのレンダリングもされません。

静的および動的 WebPart コントロール (スタティック コントロールはページのマークアップで宣言され、ダイナミック コントロールはプログラムによって追加される) のどちらも終了できます。

開発者が AllowClose プロパティを false に設定している場合、close 動詞はコントロールに表示されず、ユーザーはコントロールを終了できません。

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

このプロパティのパーソナル化スコープは Shared に設定され、承認されたユーザーだけが変更できます。詳細については、PersonalizableAttribute、Web パーツのパーソナル化の概要 の各トピックを参照してください。

使用例使用例

カスタム WebPart コントロールの AllowClose プロパティの既定の設定を変更して、そのコントロールを終了できないようにする方法を次のコード例に示します。

この例の最初の部分には、TextDisplayWebPart という名前のカスタム WebPart コントロールのコードが含まれています。カスタム コントロールのコンストラクタでは、TextDisplayWebPart.AllowClose プロパティが false に設定されます。これによって、ユーザーは Web ページでコントロールを終了できなくなります。つまり、コントロールの動詞メニューの close 動詞をユーザーが使用できないことを意味します。コード例を実行するためには、このソース コードをコンパイルする必要があります。それを明示的にコンパイルし、コンパイル済みのアセンブリを Web サイトの Bin フォルダまたはグローバル アセンブリ キャッシュに配置できます。サイトの App_Code フォルダにソース コードを配置し、実行時に動的にコンパイルすることもできます。このコード例は、ソース コードをアセンブリにコンパイルし、それを各自の Web アプリケーションの Bin サブフォルダに配置し、アセンブリを各自の Web ページの Register ディレクティブで参照することを前提にしています。両方のコンパイル方法を示すチュートリアルについては、「チュートリアル : カスタム サーバー コントロールの開発と使用」を参照してください。

Imports System
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts

Namespace Samples.AspNet.VB.Controls

<AspNetHostingPermission(SecurityAction.Demand, _
  Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
  Level := AspNetHostingPermissionLevel.Minimal)> _
Public Class TextDisplayWebPart
    Inherits WebPart
    Private _contentText As String
 = Nothing
    Private input As TextBox
    Private DisplayContent As Label
    
    
    Public Sub New() 
      Me.AllowClose = False
    End Sub
    
    <Personalizable(), WebBrowsable()>  _
    Public Property ContentText() As
 String 
        Get
            Return _contentText
        End Get
        Set
            _contentText = value
        End Set
    End Property
     
    Protected Overrides Sub
 CreateChildControls() 
        Controls.Clear()
        DisplayContent = New Label()
        DisplayContent.Text = Me.ContentText
        DisplayContent.BackColor = _
          System.Drawing.Color.LightBlue
        Me.Controls.Add(DisplayContent)
        input = New TextBox()
        Me.Controls.Add(input)
        Dim update As New
 Button()
        update.Text = "Set Label Content"
        AddHandler update.Click, AddressOf
 Me.submit_Click
        Me.Controls.Add(update)
        ChildControlsCreated = True
    
    End Sub
    
    
    Private Sub submit_Click(ByVal
 sender As Object, _
                             ByVal e As EventArgs)
 
        ' Update the label string.
        If input.Text <> String.Empty
 Then
            _contentText = input.Text & "<br />"
            input.Text = String.Empty
            DisplayContent.Text = Me.ContentText
        End If
    
    End Sub
    
End Class

End Namespace
using System;
using System.Security.Permissions;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand, 
    Level=AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand, 
    Level=AspNetHostingPermissionLevel.Minimal)]
  public class TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;

    public TextDisplayWebPart()
    {
      this.AllowClose = false;
    }

    [Personalizable(), WebBrowsable]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = 
        System.Drawing.Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      this.Controls.Add(DisplayContent);
      input = new TextBox();
      this.Controls.Add(input);
      Button update = new Button();
      update.Text = "Set Label Content";
      update.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(update);
      ChildControlsCreated = true;
    }

    private void submit_Click(object sender,
 EventArgs e)
    {
      // Update the label string.
      if (input.Text != String.Empty)
      {
        _contentText = input.Text + @"<br />";
        input.Text = String.Empty;
        DisplayContent.Text = this.ContentText;
      }
    }
  }
}
package Samples.AspNet.JSL.Controls;

import System.*;
import System.Security.Permissions.*;
import System.Web.*;
import System.Web.UI.WebControls.*;
import System.Web.UI.WebControls.WebParts.*;

/** @attribute AspNetHostingPermission(SecurityAction.Demand, Level =
    AspNetHostingPermissionLevel.Minimal)
 */
/** @attribute AspNetHostingPermission(SecurityAction.InheritanceDemand, Level =
    AspNetHostingPermissionLevel.Minimal)
 */
public class TextDisplayWebPart extends WebPart
{
    private String _contentText = null;
    private TextBox input;
    private Label displayContent;

    public TextDisplayWebPart()
    {
        this.set_AllowClose(false);
    } //TextDisplayWebPart

    /** @attribute Personalizable()
        @attribute WebBrowsable()
     */
    /** @property 
     */
    public String get_ContentText()
    {
        return _contentText;
    } //get_ContentText

    /** @property 
     */
    public void set_ContentText(String value)
    {
        _contentText = value;
    } //set_ContentText

    protected void CreateChildControls()
    {
        get_Controls().Clear();
        displayContent = new Label();
        displayContent.set_BackColor(System.Drawing.Color.get_LightBlue());
        displayContent.set_Text(this.get_ContentText());
        this.get_Controls().Add(displayContent);
        input = new TextBox();
        this.get_Controls().Add(input);
        Button update = new Button();
        update.set_Text("Set Label Content");
        update.add_Click(new EventHandler(this.Submit_Click));
        this.get_Controls().Add(update);
        set_ChildControlsCreated(true);
    } //CreateChildControls

    private void Submit_Click(Object sender,
 EventArgs e)
    {
        // Update the label string.
        if (!(input.get_Text().Equals(""))) {
            _contentText = input.get_Text() + "<br />";
            input.set_Text("");
            displayContent.set_Text(this.get_ContentText());
        }
    } //Submit_Click
} //TextDisplayWebPart

この例の 2 番目の部分は、ASP.NET Web ページで TextDisplayWebPart コントロールを参照する方法を示しています。コントロールを参照する <aspSample:TextDisplayWebPart> 要素では、コントロールのコンストラクタによって設定されているプロパティの値を変更することもできます。コントロールを終了できるようにするには、宣言マークアップで要素に AllowClose="true" 属性を追加するだけです。

<%@ page language="VB" %>
<%@ register tagprefix="aspSample" 
             Namespace="Samples.AspNet.VB.Controls"
 
             Assembly="TextDisplayWebPartVB"%>

<html>
<head id="Head1" runat="server">
  
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server"
 />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc"
 />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart" />
        </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>
<%@ page language="C#" %>
<%@ register tagprefix="aspSample" 
             Namespace="Samples.AspNet.CS.Controls" 
             Assembly="TextDisplayWebPartCS"%>

<html>
<head id="Head1" runat="server">
  
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server"
 />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc"
 />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart" />
        </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>
<%@ page language="VJ#" %>
<%@ register tagprefix="aspSample" 
             Namespace="Samples.AspNet.JSL.Controls" 
             Assembly="TextDisplayWebPartJSL"%>

<html>
<head id="Head1" runat="server">
  
</head>
<body>
  <form id="Form1" runat="server">
    <asp:webpartmanager id="WebPartManager1" runat="server"
 />
    <asp:webpartzone
      id="WebPartZone1"
      runat="server"
      title="Zone 1"
      PartChromeType="TitleAndBorder">
        <parttitlestyle font-bold="true" ForeColor="#3300cc"
 />
        <partstyle
          borderwidth="1px"   
          borderstyle="Solid"  
          bordercolor="#81AAF2" />
        <zonetemplate>
          <aspSample:TextDisplayWebPart 
            runat="server"   
            id="textwebpart" 
            title = "Text Content WebPart" />
        </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「WebPart.AllowClose プロパティ」の関連用語

WebPart.AllowClose プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



WebPart.AllowClose プロパティのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS