关闭

Silverlight DataGrid内多个数据源绑定的实现办法

2169人阅读 评论(0) 收藏 举报

我们在Silverlight开发过程中,很常见的情形是已经做好绑定的DataGrid内需要绑定不同数据源的数据,比如一个来自不同数据源的ComboBox。

下面举个简单的例子:

 

 

我们最终要显示的结果如上图所示,其中姓名,年龄来自 MainData 数据源,籍贯来自 BindingJG 数据源。

 

先简单把这两个数据源建好:

 

MainData:

 

BindingJG :

 

 

现在要把这两个数据源同时绑定到MainPage.xaml 里的 dataGrid上,

要先添加对籍贯数据类的引用:

<UserControl xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"  x:Class="SilverlightBinding.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:comJG="clr-namespace:SilverlightBinding"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">

 

 然后就可以在dataGrid里引用籍贯数据,以下是dataGrid的完整代码:

 

其中的关键代码:

                            <ComboBox x:Name="JGCombo" DataContext="{Binding Source={StaticResource iJG}}">
                                <ItemsControl ItemsSource="{Binding JiGuan}">
                                    <ItemsControl.ItemTemplate>
                                        <DataTemplate>
                                            <TextBlock Text="{Binding}"/>
                                        </DataTemplate>
                                    </ItemsControl.ItemTemplate>
                                </ItemsControl>
                            </ComboBox>

 再把MainData数据赋值给dataGrid就可以了

 

完整代码下载: Silverlight 4

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:468821次
    • 积分:5513
    • 等级:
    • 排名:第4794名
    • 原创:107篇
    • 转载:1篇
    • 译文:1篇
    • 评论:90条
    文章分类
    最新评论