SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




CustomAction für CustomList nicht machbar?

Unbeantwortet Dieser Beitrag hat 0 Antworten

Ohne Rang
2 Beiträge
MartinH erstellt 9 Feb. 2010 14:39
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

 

Hallo, 

es mag mir einfach nicht gelingen eine CustomAction an meine CustomList zu hängen. Ich habe bereits alles Mögliche versucht. Über

RegistrationType="List"
RegistrationId="10000" ("10000" = Type von ListTemplate)

oder mit 

RegistrationType="ContentType" und eben die Id meines ContentTypes als Wert für "RegistrationId". 

Dabei habe ich 3 Varianten probiert. 

  • einmal die Id des geerbten Typen: 0x0106 (Contact) 
  • die Id die meinem ContenType in der Elements.xml zugewiesen ist: 0x0106004c4569fb2de6484880c431bbea8b8160 
  • und zu guter Letzt auch noch die von SharePoint selbst generierte (mit weiterer Guid verlängerte) Id, wenn es eine Instanz des ContentTypes anlegt: 0x0106004C4569FB2DE6484880C431BBEA8B8160003D5E981251B38C4C914E94F687CEAAB2

Leider alles ohne Erfolg. An Listen aus Standard SharePoint-Templates aller möglichen Arten habe ich bereits alles mögliche an CustomActions anhängen können. Von ganzen Tabs, über eigene Gruppen und auch nur einfache Buttons oder Einträge in das Kontextmenü der Items.

Es gelang mir bisher nur über ein WebPart, was ich in die Seite der Liste eingebunden habe, einen eigenen Tab mit Groups und Controls an die Ribbon meiner CustomList zu hängen. Das WebPart enthielt dabei u.a. folgenden Code:

       SPRibbon ribbon = SPRibbon.GetCurrent(this.Page);                

       if (ribbon != null)
       { 
                    ribbon.Minimized = false;

                    ribbon.CommandUIVisible = true;

                    if (ribbon.IsTabAvailable("G-U-I-D"))
                    {
                        ribbon.MakeTabAvailable("G-U-I-D");
                    }
        }

 

Leider gibt es da nicht etwas wie MakeGroupAvailable(GroupID, TabID) oder so... Zwar ein Controls.Add(Control) worüber man sicher etwas machen könnte, aber ich will eigentlich gar nicht über ein WebPart gehen müssen, sondern nur über das XML meine CustomActions an die CustomList hängen.

Folgendes habe ich ebenfalls probiert: Ich habe über den SharePoint Designer 2010 eine beliebige Liste angelegt, an diese eine CustomAction gehangen und die komplette Site-Definition anschließend als .wsp exportiert und in den darin enthaltenen Elements.xml-Dateien geschaut, wie der Designer die CustomAction definiert.

Dabei fiel mir folgendes an der CustomAction auf: 

RegistrationId="{$ListId:Lists/Kontakte;}"

Soll das eine Art Konfigurationswert sein, der irgendwo anders in dem .wsp gehalten wird? Ich konnte nichts derartiges finden. Oder macht SharePoint beim Deployen oder Aktivieren des Featues aus diesem Konstrukt automatisch die tatsächliche Id der Liste? Als ich es selbst mal so deployed habe, ging es leider auch nicht einmal mit den Listen aus Standard-Templates.

Übrigens konnte nicht mal der SharePoint Designer eine CustomAction an meine CustomList hängen. Wie immer wurde da einfach nichts angezeigt.

Ich hoffe jemand kann mir hierbei weiterhelfen. Ich vermute ja fast es handelt sich um fiese Beta-Bugs...

MfG
Martin