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.




Dropdown Value

Unbeantwortet Dieser Beitrag hat 9 Antworten

Ohne Rang
32 Beiträge
Exes Forum erstellt 11 Juli 2011 11:49
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

wie kann ich in SharePoint bei der Programmierung eines EventReceivers den ausgewählten DropDown Wert selektieren und einem String hinzufügen?

Ich habe es bisher über die properties.Afterproperties["Name"] versucht, bekomme jedoch immer Fehler. WIrkliche Hinweise konnte ich bei der Suche im Web bisher nicht finden.

 

Viele Grüße!

Alle Antworten

Ohne Rang
235 Beiträge
FCaprio Als Antwort am 11 Juli 2011 12:29
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Listitem item = properties.ListItem;

string myString = item["name"].ToString();

sollte so gehen.

Ohne Rang
32 Beiträge
Exes Forum Als Antwort am 11 Juli 2011 12:57
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

 

ich bekomme immer den Fehler "Object reference not set to an instance of an object".

In diesem Fall bei "String mystring = ..."

Ohne Rang
235 Beiträge
FCaprio Als Antwort am 11 Juli 2011 13:09
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Dann ist dein "Name" falsch. Bitte auch auf Groß-/Kleinschreibung achten.

Ohne Rang
235 Beiträge
FCaprio Als Antwort am 11 Juli 2011 13:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Wenn du bis zur stelle bei der das ListItem zugewiesen wird debugst, dann kannst du das object aufklappen und den XML Rückgabewert rauskopieren/öffnen. Wenn du dort nach deinem Feld suchst und es findest dann musst du den internen Namen nehmen. Wenn nicht hast du dein Feld falsch geschrieben :)

Ohne Rang
32 Beiträge
Exes Forum Als Antwort am 14 Juli 2011 09:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

ich war die Tage nicht im Büro. Das Problem bei mir ist nicht der Name, der ist korrekt, sondern, dass ich bei dem Befehl "SPListItem item = properties.ListItem"  für das item null bekomme?!

Gruß!

Ohne Rang
1714 Beiträge
C.Kaiser Als Antwort am 14 Juli 2011 09:35
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

In welchem Event willst Du die Daten abgreifen?

Wenn das im Event "ItemAdding" passiert, dann ist es klar, weil das Element zum Zeitpunkt des Aufrufs noch nicht existiert.

Benutze dann properties.AfterProperties["Spalte"] ... o.ä.

Beste Grüße,
Christian

http://www.sharepoint-rhein-ruhr.de

Ohne Rang
32 Beiträge
Exes Forum Als Antwort am 14 Juli 2011 10:03
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ja, das habe ich am Anfang auch so gemacht. Ich bekomme jedoch auch da die gleiche Fehlermeldung : /.

Hier einmal der Ausschnitt aus dem Quellcode:

SPListItemCollection listItemCollection2 = list2.GetItems(spQuery2);

                //Neues Item hinzufügen, da Seminar noch nicht vorhanden
                if (listItemCollection2.Count == 0)
                {
                   
                    SPListItem newItem = list2.Items.Add();
                                   
                               
                    //String SelectedIndex = myList.Items[0]["Priorität"].ToString(); //will return a value of 1
                    //SPFieldChoice dropDown = (SPFieldChoice) myList.Items[0].Fields["Priorität"];
                    //String selectedValue = dropDown.GetFieldValueAsText(myList.Items[0]["Priorität"]);
                    //SPListItem item = properties.ListItem;

                    string selectedValue = properties.AfterProperties["Priorit%5Fx00e4%5Ft"].ToString();
                    newItem["Priorität"] = selectedValue;

Ohne Rang
1714 Beiträge
C.Kaiser Als Antwort am 14 Juli 2011 12:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Internalname & Displayname mal ausgetauscht? korrekter Internalname? Hast Du schonmal veruscht auf andere Werte zuzugreifen? Umlaute in Internalnames sind imemr etwas doof.

Beste Grüße,
Christian

http://www.sharepoint-rhein-ruhr.de

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 14 Juli 2011 15:30
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Exes Forum"]string selectedValue = properties.AfterProperties["Priorit%5Fx00e4%5Ft"].ToString()[/quote]

Das ist sicher nicht der richtige InternalName. Es heißt Priorit_x00e4_t

Viele Grüße
Andi
af @ evocom de
Blog