1

特定のリソースによって作成されたアプリケーションを表示するプログラムを作成しています。アプリケーションが割り当てられた月と年に従ってグループ化して、データグリッドにすべてのアプリケーションを表示することを計画しています。私は多くのコードを集めて試しましたが、グループ化ヘッダーを表示することはできましたが、コンテンツは表示されません。

ここに私のコードがあります:

<Window.Resources>
    <Style x:Key="GroupHeaderStyle" TargetType="{x:Type GroupItem}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type GroupItem}">
                    <Expander x:Name="EXPAND" IsExpanded="False"
                              Background="White"
                              Foreground="Black">
                    <Expander.Header>
                         <TextBlock Text="{Binding Name}"/>
                         </Expander.Header>
                    </Expander>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
     </Style>
</Window.Resources>

                    <DataGrid.Columns>
                        <DataGridTextColumn Binding="{Binding Path=AppID}" Header="App ID" Width="Auto" />
                        <DataGridTextColumn Binding="{Binding Path=ApplicationName}" Header="App Name" Width="0.30*" />
                        <DataGridTextColumn Binding="{Binding Path=Status}" Header="Status" Width="0.10*" />
                        <DataGridTextColumn Binding="{Binding Path=Category}" Header="Category" Width="Auto" />
                        <DataGridTextColumn Binding="{Binding Path=PackageType}" Header="Package Type" Width="0.10*" />
                    </DataGrid.Columns>


                    <DataGrid.GroupStyle>
                        <GroupStyle ContainerStyle="{StaticResource GroupHeaderStyle}">
                            <GroupStyle.Panel>
                                <ItemsPanelTemplate>
                                    <DataGridRowsPresenter/>
                                </ItemsPanelTemplate>
                            </GroupStyle.Panel>
                        </GroupStyle>
                    </DataGrid.GroupStyle>

                </DataGrid>

コードビハインド:

private void LoadTracker()
        {
            myMSIPID.procGetMSITrackByPID(dsApp.procGetMSITrackByPID,PID);

            ICollectionView cView = CollectionViewSource.GetDefaultView(dsApp.procGetMSITrackByPID);

            cView.GroupDescriptions.Add(new PropertyGroupDescription("MonthYear"));

            dgAppTracker.DataContext = dsApp.procGetMSITrackByPID;
            dgAppTracker.ItemsSource = cView;

        }

私のプログラムに行が表示されない理由を誰か教えてもらえますか? ありがとうございました。

4

0 に答える 0