Manuell-Gruppe DataGrid Elemente

Ich brauchen, um eine Daten-grid und meine Daten sieht wie folgt aus:
firstName, lastName, Strasse, PLZ, Stadt, Land, Bild

In meinem datagrid-ich werde nur zeigen, firstName, lastName und Bild, sondern es werden gruppiert nach Stadt.

Update
Der code unten zeigt gruppierte Elemente, aber die drei Produkte, die ich anzeigen möchten (Vorname, Nachname, Bild) sind, gefolgt von allen Elementen (firstName, lastName, Strasse, PLZ, Stadt, Land, Bild) pro Zeile. Ich glaube, ich habe zu ersetzen, die <ItemsPresenter /> aber das ist nur Spekulation..

Kann mir jemand helfen, ich kann nicht verwalten, dies auf meine eigene...

<Grid>
    <DataGrid ItemsSource="{Binding GroupedMovables}">
        <DataGrid.Columns>
            <DataGridTemplateColumn Header="Preview" Width="SizeToCells" IsReadOnly="True">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <Image Name="Preview" Height="20" Source="{Binding Image}" HorizontalAlignment="Center" />
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>
            <DataGridTextColumn Header="first name" Binding="{Binding FirstName}" />
            <DataGridTextColumn Header="last name" Binding="{Binding LastName}" />
        </DataGrid.Columns>
        <DataGrid.GroupStyle>
            <GroupStyle>
                <GroupStyle.HeaderTemplate>
                    <DataTemplate>
                        <StackPanel>
                            <TextBlock Text="{Binding Path=City}" FontWeight="Bold" Padding="3"/>
                        </StackPanel>
                    </DataTemplate>
                </GroupStyle.HeaderTemplate>
                <GroupStyle.ContainerStyle>
                    <Style TargetType="{x:Type GroupItem}">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="{x:Type GroupItem}">
                                    <Expander>
                                        <Expander.Header>
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Text="{Binding Path=Name}" />
                                                <TextBlock Text="{Binding Path=ItemCount}" Margin="8,0,4,0"/>
                                                <TextBlock Text="Element(s)"/>
                                            </StackPanel>
                                        </Expander.Header>
                                        <ItemsPresenter />
                                    </Expander>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </GroupStyle.ContainerStyle>
            </GroupStyle>
        </DataGrid.GroupStyle>
    </DataGrid>
</Grid>
Bitte erläutern Sie: was funktioniert nicht genau? Hat der code einen Fehler erzeugen? Falls ja, was ist der Fehler??? Hat es falsch angezeigt? Wenn ja, wie funktioniert die Anzeige jetzt, und wie lässt sich das unterscheiden von dem, was Sie wollen? Danke.
Ich aktualisiert meine Erklärung, hoffe, die Sache jetzt klarer.
Und was passiert, wenn Sie entfernen <ItemsPresenter />?
Überprüfen Sie bitte meine Antwort weiter unten und vergleichen Sie es mit Ihrem code.

InformationsquelleAutor iop | 2012-04-23

Schreibe einen Kommentar