如何将两个DataGrid链接在一起?

时间:2012-03-29 22:27:19

标签: wcf silverlight entity ria

我正在编写一个需要显示一些数据的Silverlight应用程序。 有两个DataGrids: 第一个显示“用户”类。该类包含几个字段,如“名称”,“性别”,“等级”,“部门”,“指纹”。 “指纹”包含多个“指纹”类。 现在我需要将两个DataGrid链接在一起 - 第一个显示所有用户,第二个显示在第一个DataGrid中选择的一个用户的指纹。

BTW:我正在使用WCF域服务为这两个DataGrids提供数据源。

更新1: XAML代码:

<sdk:Page.Resources>
    <CollectionViewSource x:Key="studentFingerprintsViewSource" Source="{Binding Path=Data.Fingerprints, ElementName=dds_Main}" />
</sdk:Page.Resources>

<riaControls:DomainDataSource x:Name="dds_Main" QueryName="GetStudentsQuery">
    <riaControls:DomainDataSource.FilterDescriptors>
        <riaControls:FilterDescriptor Operator="Contains" PropertyPath="Number" Value="{Binding Text, ElementName=txt_UserID, Mode=TwoWay}"/>
        </riaControls:DomainDataSource.FilterDescriptors>
    <riaControls:DomainDataSource.DomainContext>
        <ds:AllDomainContext />
    </riaControls:DomainDataSource.DomainContext>
</riaControls:DomainDataSource>

<sdk:DataGrid AutoGenerateColumns="True" ItemsSource="{Binding ElementName=dds_Main, Path=Data}" Margin="12,38,8,0" Name="dg_Main" RowDetailsVisibilityMode="VisibleWhenSelected" Height="168" VerticalAlignment="Top" />

<sdk:DataGrid AutoGenerateColumns="True" Height="200" HorizontalAlignment="Left" ItemsSource="{Binding Source={StaticResource studentFingerprintsViewSource}}" Margin="406,320,0,0" Name="fingerprintsDataGrid" RowDetailsVisibilityMode="VisibleWhenSelected" VerticalAlignment="Top" Width="400" />

class Fingerprint
{
    int id;
    /* something more */
}

Class Student
{
    int id;
    /* Fingerprints. I forgot the type. All models classes are generated by Entity Model Designer */
    /* something more */
}

第一个DataGrid可以正确显示所有学生,后者总是没有显示...

0 个答案:

没有答案