次の方法で共有


タブを Server リボンに追加する

最終更新日: 2011年2月7日

適用対象: SharePoint Foundation 2010

この記事の内容
SharePoint プロジェクトの作成
新しいフィーチャーの追加
カスタム アクションの定義
カスタマイズの展開

このトピックでは、新しいタブを Microsoft SharePoint Foundation の Server リボンに追加する方法について説明します。

前提条件

SharePoint Foundation 2010

Microsoft Visual Studio 2010 の SharePoint 開発者ツール

SharePoint プロジェクトの作成

新しいタブを追加するには、空の SharePoint プロジェクトを作成することから始めます。

SharePoint プロジェクトを作成するには

  1. Visual Studio 2010 を起動します。

  2. [ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。

  3. [プロジェクトの種類] で、[Visual Basic] または [C#] の [空の SharePoint プロジェクト] を選択します。

  4. プロジェクト名として「AddARibbonTab」と入力し、[OK] をクリックします。

  5. SharePoint カスタマイズ ウィザードで [サンドボックス ソリューションとして配置する] を選択し、[完了] をクリックします。

新しいフィーチャーの追加

フィーチャーを使用してリボンをカスタマイズします。次の手順では、新しいフィーチャーをソリューションに追加します。

新しいフィーチャーを追加するには

  1. ソリューション エクスプローラーで [Features] を右クリックし、[フィーチャーの追加] を選択します。

  2. フィーチャーの [タイトル] を「Custom Ribbon Tab」に変更します。

  3. ソリューション エクスプローラーで [Feature1] を右クリックし、[名前の変更] を選択します。新しい名前として「CustomRibbonTab」と入力します。

  4. ソリューション エクスプローラーで [AddARibbonTab] プロジェクトを右クリックし、[追加] をポイントし、[新しいアイテム] をクリックします。

  5. [新しいアイテムの追加] ダイアログ ボックスで [空の要素] テンプレートを選択します。名前として「CustomRibbonTab」と入力します。

カスタム アクションの定義

リボンのカスタマイズは、カスタム アクション内でリボン XML を使用して定義します。リボン XML の詳細については、「Server リボン XML」を参照してください。

カスタム アクションを定義するには

  1. Elements.xml ファイルを開きます。

  2. 次のリボン XML を Elements.xml ファイルに貼り付けます。これにより、グループを持つ新しい [My Custom Tab] タブおよび 3 つのボタンがドキュメント ライブラリに追加されます。

    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="https://schemas.microsoft.com/sharepoint/">
      <CustomAction
        Id="MyCustomRibbonTab"
        Location="CommandUI.Ribbon.ListView"
        RegistrationId="101" 
        RegistrationType="List">
          <CommandUIExtension>
            <CommandUIDefinitions>
              <CommandUIDefinition
                Location="Ribbon.Tabs._children">
                <Tab 
                  Id="Ribbon.CustomTabExample" 
                  Title="My Custom Tab" 
                  Description="This holds my custom commands!" 
                  Sequence="501">
                <Scaling
                  Id="Ribbon.CustomTabExample.Scaling">
                  <MaxSize
                    Id="Ribbon.CustomTabExample.MaxSize" 
                    GroupId="Ribbon.CustomTabExample.CustomGroupExample" 
                    Size="OneLargeTwoMedium"/>
                  <Scale 
                    Id="Ribbon.CustomTabExample.Scaling.CustomTabScaling"
                    GroupId="Ribbon.CustomTabExample.CustomGroupExample" 
                    Size="OneLargeTwoMedium" />
                </Scaling>
                <Groups Id="Ribbon.CustomTabExample.Groups">
                  <Group 
                    Id="Ribbon.CustomTabExample.CustomGroupExample" 
                    Description="This is a custom group!" 
                    Title="Custom Group" 
                    Sequence="52" 
                    Template="Ribbon.Templates.CustomTemplateExample">
                    <Controls Id="Ribbon.CustomTabExample.CustomGroupExample.Controls">
                      <Button 
                        Id="Ribbon.CustomTabExample.CustomGroupExample.HelloWorld" 
                        Command="CustomTabExample.HelloWorldCommand" 
                        Sequence="15" 
                        Description="Says hello to the World!" 
                        LabelText="Hello, World!" 
                        TemplateAlias="cust1"/>
                      <Button 
                        Id="Ribbon.CustomTabExample.CustomGroupExample.GoodbyeWorld" 
                        Command="CustomTabExample.GoodbyeWorldCommand" 
                        Sequence="17" 
                        Description="Says good-bye to the World!" 
                        LabelText="Good-bye, World!" 
                        TemplateAlias="cust2"/>
                      <Button 
                        Id="Ribbon.CustomTabExample.CustomGroupExample.LoveWorld" 
                        Command="CustomTabExample.LoveWorldCommand" 
                        Sequence="19" 
                        Description="Says I love the World!" 
                        LabelText="I love you, World!" 
                        TemplateAlias="cust3"/>
                    </Controls>
                  </Group>
                </Groups>
              </Tab>
            </CommandUIDefinition>
            <CommandUIDefinition Location="Ribbon.Templates._children">
              <GroupTemplate Id="Ribbon.Templates.CustomTemplateExample">
                <Layout 
                  Title="OneLargeTwoMedium" 
                  LayoutTitle="OneLargeTwoMedium">
                  <Section Alignment="Top" Type="OneRow">
                    <Row>
                      <ControlRef DisplayMode="Large" TemplateAlias="cust1" />
                    </Row>
                  </Section>
                  <Section Alignment="Top" Type="TwoRow">
                    <Row>
                      <ControlRef DisplayMode="Medium" TemplateAlias="cust2" />
                    </Row>
                    <Row>
                      <ControlRef DisplayMode="Medium" TemplateAlias="cust3" />
                    </Row>
                  </Section>
                </Layout>
              </GroupTemplate>
            </CommandUIDefinition>
          </CommandUIDefinitions>
          <CommandUIHandlers>
            <CommandUIHandler
              Command="CustomTabExample.HelloWorldCommand" 
              CommandAction="javascript:alert('Hello, world!');" />
            <CommandUIHandler 
              Command="CustomTabExample.GoodbyeWorldCommand" 
              CommandAction="javascript:alert('Good-bye, world!');" />
            <CommandUIHandler 
              Command="CustomTabExample.LoveWorldCommand" 
              CommandAction="javascript:alert('I love you, world!');" />
          </CommandUIHandlers>
        </CommandUIExtension>
      </CustomAction>
    </Elements>
    

カスタマイズの展開

プロジェクトは、サンドボックス ソリューションとして設定されているので、ソリューション ギャラリーに展開されます。

カスタマイズを展開するには

  1. F5 キーを押します。Visual Studio 2010 の SharePoint 開発者ツールによって、フィーチャーの構築と展開が自動で行われます。

  2. サイトまたはサブサイト内のドキュメント ライブラリに移動します。

  3. [My Custom Tab] タブをクリックし、[ユーザー設定のグループ] を確認して、[Hello, World]、[Good-bye, World]、または [I Love You, World] ボタンをクリックします。

関連項目

概念

Server リボンの宣言型カスタマイズ