1

シルバーライト5の質問です。PagedCollectionView を ItemsSource として (GroupDescriptions.Add 経由で) 使用することにより、DataGrid 内の項目をグループ化できます。問題ない。ただし、私たちはプロトタイプに取り組んでいるデザイナー (経験豊富なプログラマーではありません) であり、サンプル データ ソース/コレクションを便利に作成し、サンプル入力データを作成できるように、Blend の「データ」ウィンドウを広範囲に使用しています。残念ながら、GroupDescriptions.Add は、[データ] ウィンドウから作成されたこれらの xml ベースのコレクションでは機能しないようです。

C# を使用せずに DataGrid でグループ化を使用する方法はありますか? または、「データ」ウィンドウで作成されたサンプル データを DataGrid にグループ化する方法はありますか?

私は調査を行いましたが、これは不可能かもしれないと考え始めています。初投稿です、お手柔らかに!ありがとう -

4

1 に答える 1

1

デザイナー (ブレンドまたは VS) で Silverlight Datagrid グループを表示する方法:

サンプル データ Collection への XAMLCollectionViewSourceバインドの作成を試みることができます。

  1. "customerSampleData" という名前の新しいサンプル データを作成します。
  2. 2 つのサブ プロパティ (名前、年齢) を持つコレクション プロパティ (「コレクション」という名前) を追加します。
  3. CollectionViewSourceでリソースを追加しPropertyGroupDescriptionます。

最後のステップを参照してください。

xmlns:compMod="clr-namespace:System.ComponentModel;assembly=System.Windows"
xmlns:SampleData="clr-namespace:Expression.Blend.SampleData.customerSampleData"
...
</UserControl.Resources>
    <SampleData:customerSampleData x:Key="customerSampleData" d:IsDataSource="True"/>

    <CollectionViewSource
        x:Key="dataSource"
        d:IsDataSource="True"
        Source="{Binding Collection, Source={StaticResource customerSampleData}}">
        <CollectionViewSource.SortDescriptions>
            <compMod:SortDescription PropertyName="Name" Direction="Ascending"/>
        </CollectionViewSource.SortDescriptions>
        <CollectionViewSource.GroupDescriptions>
            <PropertyGroupDescription PropertyName="Age"/>
        </CollectionViewSource.GroupDescriptions>
    </CollectionViewSource>
</UserControl.Resources>

<Grid x:Name="LayoutRoot" Background="White" DataContext="">
    <sdk:DataGrid  AutoGenerateColumns="False" DataContext="{Binding Source={StaticResource dataSource}}" ItemsSource="{Binding}" >
        <sdk:DataGrid.Columns>
            <sdk:DataGridTextColumn Binding="{Binding Name}" Header="Name"/>
            <sdk:DataGridTextColumn Binding="{Binding Age}" Header="Age"/>
        </sdk:DataGrid.Columns>
    </sdk:DataGrid>
</Grid>
于 2013-06-06T08:34:15.123 に答える