CustomAction 要素

適用対象: SharePoint 2016 |SharePoint Foundation 2013 |SharePoint Online |SharePoint Server 2013

ツールバー上のボタン、サイト設定ページ上のリンクなど、ユーザーインターフェイスの拡張を定義します。

定義

<CustomAction
  RequiredAdmin = "Delegated | Farm | Machine"
  ControlAssembly = "Text"
  ControlClass = "Text"
  ControlSrc = "Text"
  Description = "Text"
  FeatureId = "Text"
  GroupId = "Text"
  Id = "Text"
  ImageUrl = "Text"
  Location = "Text"
  RegistrationId = "Text"
  RegistrationType = "Text"
  RequireSiteAdministrator = "TRUE" | "FALSE"
  Rights = "Text"
  RootWebOnly = "TRUE" | "FALSE"
  ScriptSrc = "Text"
  ScriptBlock = "Text"
  Sequence = "Integer"
  ShowInLists = "TRUE" | "FALSE"
  ShowInReadOnlyContentTypes = "TRUE" | "FALSE"
  ShowInSealedContentTypes = "TRUE" | "FALSE"
  Title = "Text"
  UIVersion = "Integer">
</CustomAction>

要素と属性

以下のセクションで、属性、子要素、親要素について説明します。

属性

属性 説明
**RequiredAdmin** 省略可能 **Text**です。 カスタム アクションに適用する必要のある管理権限を指定します。 この値を使用して、サーバーの全体管理内のリンクをトリミングします。 使用可能な値は次のとおりです。
  • **Delegated**

  • **Farm**

  • **Machine**

**ControlAssembly** 省略可能 **Text**です。 カスタム アクションを操作するコントロールのアセンブリを指定します。
**ControlClass** 省略可能 **Text**です。 カスタム アクションを操作するコントロールのクラスを指定します。
**ControlSrc** 省略可能 **Text**です。 カスタム アクションのソースとして機能する .ascx ファイルの相対 URL を指定します (例: "~/_controltemplates/myCustomAction.ascx")。
**Description** 省略可能 **Text**です。 アクションの説明文で、ヒント、あるいは補助的な説明として表示します。
**FeatureId** 省略可能 **Text**です。 カスタム アクションに関連付ける機能を特定します。
**GroupId** 省略可能 **Text**です。 アクションを含むアクション グループを識別します (例: "SiteManagement")。 カスタム アクション グループに含まれている場合、属性の **GroupId** 値は CustomActionGroup 要素のグループ ID と同じである必要があります。

Microsoft SharePoint Foundation で使用される既定のカスタム アクション グループ ID の一覧については、「 既定のカスタム アクションの場所と ID」を参照してください。
**Id** 省略可能 **Text**です。 カスタム アクションの一意識別子を指定します。 ID は GUID でも、一意の用語 (例: "HtmlViewer") でもかまいません。
**ImageUrl** 省略可能 **Text**です。 アイテムに対応するアイコン画像を指す、仮想サーバーを基準とした相対リンクを指定します。
**Location** 省略可能 **Text**です。 このカスタム アクションの場所を指定します (例: "Microsoft.SharePoint.SiteSettings")。

要素に **CustomAction** 子要素が **CommandUIExtension** 含まれている場合、 は **Location** "CommandUI.Ribbon" で始まる必要があります。 [サーバー] リボンで使用される既定の場所の一覧については、「 既定のサーバー リボンのカスタマイズの場所」を参照してください。

カスタム アクションがメニュー項目またはツール バー ボタンの場合、使用可能なオプションには、、**NewFormToolbar**、、および が**EditFormToolbar**含まれます**EditControlBlock****DisplayFormToolbar**

カスタム アクション グループに含まれている場合、属性の **Location** 値は CustomActionGroup 要素の場所と同じである必要があります。

SharePoint Foundation で使用される既定のカスタム アクションの場所の一覧については、「 既定のカスタム アクションの場所と ID」を参照してください。

**RegistrationId** 省略可能 **Text**です。 このアクションが関連付けられているリストまたはアイテム コンテンツ タイプの識別子、またはファイルの種類またはプログラム識別子 (**ProgID**) を指定します。
**RegistrationType** 省略可能 **Text**です。 RegistrationId に指定したのが何であるかを指定します。 次の値を指定できます。
  • **None**

  • **List**

  • **ContentType**

  • **ProgId**

  • **FileType**

**RequireSiteAdministrator** 省略可能 **Boolean**です。 **TRUE**ユーザーがサイト管理者の場合にのみアイテムを表示するように指定する。それ以外の場合は 。 **FALSE** リスト アイテムに **RequireSiteAdministrator** 関連付けられている SharePoint Foundation コマンドのドロップダウン メニューに属性を使用することはサポートされていません。
**Rights** 省略可能 **Text**です。 リンクを表示するためにユーザーが持つ必要がある権限のセット (例: "ViewListItems,ManageAlerts") を指定します。 指定されていない場合、アクションは常にアクションの一覧に表示されます。 複数の権限を指定するには、コンマを使用して値を区切ります。 権限のセットは、ロジックに従って **AND** 論理的にグループ化されます。つまり、アクションを表示するには、ユーザーが指定したすべての権限を持っている必要があります。 使用可能な値の一覧については、「Microsoft.SharePoint.SPBasePermissions」を参照してください。
**RootWebOnly** 省略可能 **Boolean**です。 **TRUE** カスタム アクションをルート Web サイトにのみデプロイします。 この属性は、サンドボックス ソリューションのカスタム アクションに適用されます。
**ScriptSrc** 省略可能 **Text**です。 実行するスクリプトが含まれるファイルを指定します。 この属性は、 属性が に**ScriptLink**設定されている場合**Location**にのみ適用されます。
**ScriptBlock** 省略可能 **Text**です。 実行するスクリプトのブロックを指定します。 この属性は、 属性が に**ScriptLink**設定されている場合**Location**にのみ適用されます。
**Sequence** 省略可能 **Integer**です。 アクションの適用順序 (優先順位) を指定します。
**ShowInLists** この属性は使用されなくなるため、使用しないでください。

省略可能 **Boolean**です。 **TRUE** コンテンツ タイプを管理するためのページのリストに対してのみカスタム アクションが表示される場合。 既定値は **FALSE** です。

**ShowInReadOnlyContentTypes** 省略可能 **Boolean**です。 **TRUE** コンテンツ タイプを管理するためにページの読み取り専用コンテンツ タイプに対してのみカスタム アクションが表示される場合。 既定値は **FALSE** です。
**ShowInSealedContentTypes** 省略可能 **Boolean**です。 **TRUE** カスタム アクションが、コンテンツ タイプを管理するためのページ上のシールされたコンテンツ タイプに対してのみ表示される場合。 既定値は **FALSE** です。
**Title** 必須 **Text**。 このアクションのエンド ユーザー向けの説明文を指定します。
**UIVersion** 省略可能 **Integer**です。 このカスタム アクションを表示する必要のあるユーザー インターフェイスのバージョンを指定します。

子要素

CommandUIExtension

UrlAction

親要素

要素

Occurrences

最小 : 1

最大: 制約なし

注釈

CustomAction 要素を使用すると、標準の ASP.NET コントロールとユーザー コントロール (テキスト ボックスやオプション ボタンなど) をツール バーのカスタム アクションとして追加できます。 ただし、メニュー項目をインスタンス化するコントロールは、ツール バーのドロップダウン メニューにのみ追加できます。Web パーツや任意のコントロールを追加することはできません。

次の例は、[サーバー] リボンのボタンを置き換える機能の一部です。

    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
      <CustomAction Id="Ribbon.Library.Actions.ReplacementButton"
        Location="CommandUI.Ribbon"
        RegistrationId="101"
        RegistrationType="List"
        Title="Replace a Ribbon Button">
        <CommandUIExtension>
          <CommandUIDefinitions>
            <CommandUIDefinition
              Location="Ribbon.Library.Actions.ConnectToClient">
                 <Button Id="Ribbon.Library.Actions.ConnectToClient.ReplacementButton"
                   Command="ReplacementButtonCommand"
                   Image16by16="Insert an image URL here."
                   Image32by32="Insert an image URL here."
                   LabelText="Replaced Button"
                   TemplateAlias="o2" />
            </CommandUIDefinition>
          </CommandUIDefinitions>
          <CommandUIHandlers>
            <CommandUIHandler
              Command="ReplacementButtonCommand"
              CommandAction="javascript:alert('This button has been replaced.');" />
          </CommandUIHandlers>
        </CommandUIExtension>
      </CustomAction>
    </Elements>

関連項目