2016-09-08 3 views
0

Ich habe dieses Problem mit XamDataGrid. Es funktioniert perfekt mit einer Dictionary-Datenquelle mit zwei benutzerdefinierten Feldern, wenn ich ihre Namen auf Schlüssel und Wert setze. So legte ich die Datenquelle auf das Array (Bindung an eine benutzerdefinierte Eigenschaft.SubProperty < - das ist die Zeichenfolge []). Ich habe ein benutzerdefiniertes FieldLayout eingerichtet (ich brauche ein benutzerdefiniertes Label, deshalb brauche ich ein benutzerdefiniertes Feld.). Für mein Feld benötige ich eine Eigenschaft "Name". Aber es hat keinen Namen. Ich habe "Value" ausprobiert, ich habe sogar versucht, an die Eigenschaft zu binden und den FieldLayout-Schlüssel für die Untereigenschaft zu setzen. So sieht der Code irgendwie so:Wie zeige ich ein einfaches String-Array in einem benutzerdefinierten xamDataGrid-Feld an?

<igDP:XamDataGrid DataSource="{Binding ElementName=listBox, Path=SelectedItem.Property.StringArraySubProperty}"> 
     //...FieldLayoutSettings... 
     //...FieldSettings... 
     <igDP:XamDataGrid.FieldLayouts> 
     <igDP:FieldLayout> 
      <igDP:FieldLayout.Fields> 
      <igDP:Field Name="???Value???orWhat?" 
         Label="Stuff"/> 
     <igDP:FieldLayout.Fields> 
     </igDP:FieldLayout> 
    </igDP:XamDataGrid.FieldLayouts> 
    </igDP:XamDataGrid> 

Wenn ich es AutoGeneratedFields gesetzt, es ist perfekt. Die Werte erscheinen in einem Feld mit der Bezeichnung "Value". Wie auch immer, was mache ich?

Antwort

1

Versuchen Sie, eine TemplateField

<igDP:FieldLayout.Fields> 
    <igDP:TemplateField > 
     <igDP:TemplateField.DisplayTemplate> 
      <DataTemplate> 
       <TextBlock Text="{Binding}" /> 
      </DataTemplate> 
     </igDP:TemplateField.DisplayTemplate> 
    </igDP:TemplateField> 
</igDP:FieldLayout.Fields> 
+1

Außer TextBlock- kein Label-Eigenschaft hätte verwenden. Sonst würde ich zustimmen. –

+0

@ChrisW. Whoops, falsches Tag! Vielen Dank. –

+0

Dargestellt, kann jetzt +1 it lol: P –

Verwandte Themen