Autor Beitrag
Namenlosnameless
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 259
Erhaltene Danke: 6

Windows XP Home Edition, Windos Vista
C#
BeitragVerfasst: Do 11.07.13 02:15 
Hallo!

Konkret will ich eine 2-Stufige Liste in einem GridView darstellen. Dazu definiere ich mit
ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
<GridView.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel Orientation="Vertical"/>
                </ItemsPanelTemplate>
            </GridView.ItemsPanel>
            <GridView.GroupStyle>
                <GroupStyle>
                    <GroupStyle.HeaderTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding Name}" Margin="3,-7,10,10" Style="{StaticResource GroupHeaderTextStyle}"/>
                        </DataTemplate>
                    </GroupStyle.HeaderTemplate>
                    <GroupStyle.Panel>
                        <ItemsPanelTemplate>
                          <VariableSizedWrapGrid Orientation="Horizontal"/>
                        </ItemsPanelTemplate>
                    </GroupStyle.Panel>
                </GroupStyle>
            </GridView.GroupStyle>


Mal die Form der Gruppen, und kann mit dem StackPanel im ItemsPanelTemplate des ItemsPanel die Flussrichtung der Gruppen bestimmen und mit dem VariabldWrapGrid des Panels die Flussrichtung der untergeordneten Elemente.
Nun kommt es aber zu einem Fehler... Ganz unten bekomme ich eine halbabgeschnitten dargestellte Gruppe, die es per definition des Win8-GridViews nicht geben sollte, da ja nach rechts weiter sortiert werden müsste. Gibts da irgendeine Property die ich da setzen muss? Ich hab sie nicht wirklich gefunden.

Des weiteren würde ich gerne die Elemente der Gruppe auch noch mal "fließen" lassen wenn sie den Rand erreichen? Wie kann ich das erreichen?
Die Items werden übrigens so definiert:

ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
<GridView.ItemTemplate>
                    <DataTemplate >
                        <Grid Width="100" Margin="10">
                            <Grid.RowDefinitions>
                            <RowDefinition/>
                            <RowDefinition Height="50"/>
                        </Grid.RowDefinitions>
                        <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="50" Height="50" HorizontalAlignment="Center">
                            <Image Source="{Binding Image}" Stretch="Fill"/>
                        </Border>
                        <StackPanel Grid.Row="1" VerticalAlignment="Top" Margin="10,0,0,0">
                                <TextBlock Text="{Binding Name}" TextWrapping="Wrap" Style="{StaticResource TitleTextStyle}"/>
                               
                            </StackPanel>
                        </Grid>
                    </DataTemplate>
                
            </GridView.ItemTemplate>


Ich bin noch ziemlich neu bei XAML und noch überhaupt nicht sicher in dessen Verwendung, insofern kenn ich noch nicht alle Controls die ich brauche. Ich vermute dass ich statt dem VeriableSizeWrapGrid ein anderes Control verwenden sollte, damit ich die Items nochmal umlenken kann, oder?

mfg Namenlosnameless

_________________
1:<<Life sucks!!>> 2:<< Well okay>> 1: <<Just Yours>> 2:<<Ohmph>>