Wenn man in einem synchronen EventReceiver (-ing) einer Dokumentbibliothek auf die Standard-Titelspalte (Title) zugreifen möchte, wird man beim ersten Versuch sehr wahrscheinlich eine Überraschung erleben. Man bekommt weder einen neu eingegebenen Wert, noch kann man dieses Feld ändern. Die Lösung für dieses Problem ist ganz einfach (wenn man es weiß): man muß dort das Feld "vti_title" verwenden.
Der Effekt tritt nur in synchronen Ereignissen wie ItemAdding oder ItemUpdating und nur in Dokumentbibliotheken auf. Normalerweise kann man bei diesen Ereignissen über
properties.AfterProperties["InternerFeldname"]
auf die neuen Werte zugreifen. Ebenso kann man die Werte setzen, indem man den gewünschten Wert als string in die AfterProperties schreibt:
properties.AfterProperties["InternerFeldname"] = "Neuer Wert"
Wenn man das mit dem Standardfeld Titel versucht, dessen interner Name immer Title ist, wird man feststellen, daß man falsche Werte erhält und daß Änderungen nicht übernommen werden. Lösung: bei den genannten Umständen (synchrones Ereignis einer Dokumentbibliothek) muß als Feldname immer "vti_title" verwendet werden.
Falls jemand eine Begründung für dieses mehr als seltsame Verhalten kennt, möge er mir diese bitte mitteilen. Würde mich brennend interessieren.