2010-10-27 13 views
5

Utworzono niestandardowy typ pola (wyprowadzony z SPFieldText) i dodano niestandardową właściwość "MojaProperty". Teraz szukam tego, muszę użyć tego typu pola w mojej funkcji Content Type.Ustawianie niestandardowych właściwości niestandardowego typu pól w ramach funkcji typu zawartości

W jaki sposób mogę spolaryzować moją niestandardową właściwość w pliku definicji typu zawartości, tak jak to, co robimy z typami pól OOB?

Widziałem obejście here, ale rozwiązuje tylko problem sprawdzania poprawności XSD. Kolumna witryny jest poprawnie instalowana, ale wartość określona w obiekcie nie jest ustawiona dla kolumny po zainstalowaniu tej funkcji.

Dziękuję z góry

Arun

Odpowiedz

1

czymś jak to

<Field ID="{aec8cea1-d0df-49fc-baef-d356e58423f4}" Name="ClientWorkspace" DisplayName="$Resources:Nervogrid.Lauxtermann.Root,FieldWorkspaceDisplayName;" Type="ExtendedWorkspace" Group="$Resources:Nervogrid.Lauxtermann.Root,GroupLauxtermannFields;" AllowDuplicateValues="FALSE"> 
    <Customization> 
     <ArrayOfProperty> 
     <Property> 
      <Name>SiteTemplates</Name> 
      <Value xmlns:q1="http://www.w3.org/2001/XMLSchema" p4:type="q1:string" xmlns:p4="http://www.w3.org/2001/XMLSchema-instance">;#12203;#</Value> 
     </Property> 
     <Property> 
      <Name>HideOnDisplayForm</Name> 
      <Value xmlns:q2="http://www.w3.org/2001/XMLSchema" p4:type="q2:string" xmlns:p4="http://www.w3.org/2001/XMLSchema-instance">$Resources:core,fld_no;</Value> 
     </Property> 
     <Property> 
      <Name>HideOnEditForm</Name> 
      <Value xmlns:q3="http://www.w3.org/2001/XMLSchema" p4:type="q3:string" xmlns:p4="http://www.w3.org/2001/XMLSchema-instance">$Resources:core,fld_yes;</Value> 
     </Property> 
     </ArrayOfProperty> 
    </Customization> 
    </Field> 
1

ten pracował dla mnie

 <Field ID="{EB4A62A3-5722-4D12-9AB8-BB36461D8E5D}" Type="MyCustomFieldType" Name="Website" DisplayName="Website" StaticName="Website" Required="true"> 
     <Customization> 
      <ArrayOfProperty> 
      <Property> 
       <Name>MyFirstProperty</Name> 
       <Value>www.stackoverflow.com</Value> 
      </Property> 
      <Property> 
       <Name>MySecondProperty</Name> 
       <Value>stackoverflow</Value> 
      </Property> 
      </ArrayOfProperty> 
     </Customization> 
     </Field> 

można uzyskać dostęp do obiektu klasy walidacji tak:

string myFieldValue = ((XmlNode[])this.GetCustomProperty("MyFirstProperty"))[0].Value; 
Powiązane problemy