Ich versuche, einen benutzerdefinierten Feldtyp in SharePoint (WSS 3.0) mit benutzerdefinierten Eigenschaften zu erstellen. Ich habe meine fldtypes * .xml-Datei basierend auf den SDK-Dokumenten und this blog post erstellt und es scheint gut zu rendern und ich kann die benutzerdefinierten Eigenschaftswerte in meinem Code abrufen. Mein Problem ist, dass nach der Erschaffung des ersten Felds, wenn ich auf die Seite mit den Listeneinstellungen zurückkehre und auf mein neu hinzugefügtes Feld klicke, das Formular meine benutzerdefinierten Eigenschaften mit einem gewissen Wert anzeigt, den ich nicht zur Verfügung stelle. Wenn der Anzeigename meiner benutzerdefinierten Eigenschaft beispielsweise "Meine benutzerdefinierte Prop" lautet, lautet der Wert in der Textbox "Mein benutzerdefinierter Prop-Feldwert".Problem beim Anzeigen benutzerdefinierter Eigenschaftswerte für benutzerdefinierte SharePoint-Feldtypen
Meine Frage ist das: Wie kann ich die tatsächlichen Zeichenfolgenwerte meiner benutzerdefinierten Eigenschaftstypen in diesen Textfeldern ordnungsgemäß anzeigen?
Hier ist mein fldtypes * .xml-Datei:
<?xml version="1.0" encoding="utf-8"?>
<FieldTypes>
<FieldType>
<Field Name="TypeName">MyCustomField</Field>
<Field Name="TypeDisplayName">My Custom Field</Field>
<Field Name="TypeShortDescription">MyCustomField</Field>
<Field Name="ParentType">Text</Field>
<Field Name="UserCreatable">TRUE</Field>
<Field Name="FieldTypeClass">MyCustomField.CustomFields.MyCustomField, MyCustomField, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d772gbab82fe6996</Field>
<PropertySchema>
<Fields>
<Field Name="MyCustomProp" DisplayName="My Custom Prop" Type="Text" MaxLength="50" DisplaySize="30" />
</Fields>
</PropertySchema>
</FieldType>
</FieldTypes>
Und hier ist der Code für meinen Feldtyp Klasse:
public class MyCustomField : SPFieldText
{
private string propval;
public MyCustomField(SPFieldCollection fields, string fieldName)
: base(fields, fieldName)
{
}
public MyCustomField(SPFieldCollection fields, string typeName, string displayName)
: base(fields, typeName, displayName)
{
}
public override void Update()
{
// I can see any updated value here
propval = GetCustomProperty("MyCustomProp") as string;
base.Update();
}
public override Type FieldValueType
{
get { return typeof (string); }
}
}
Was kann ich in meinem die richtigen benutzerdefinierten Eigenschaftswerte zu sehen, zu tun " Spalte "Spalte" (FldEditEx.aspx) in meiner SharePoint App ändern?