积极答复者
怎么绑定Linq的匿名类到Datagrid?

问题
答案
全部回复
-
把你的xaml页完整的xaml代码粘出来,很可能你引用的sdk有问题,建议使用blend来直接datagrid的创建,在vs2010中创建datagrid有时会引用错xaml空间.
<navigation:Page x:Class="TestFunction.FPS"
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:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit"
xmlns:datagrid="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
mc:Ignorable="d"
xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
d:DesignWidth="674" d:DesignHeight="374"
Title="FPS Page" ><Grid x:Name="LayoutRoot">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Border BorderThickness="3" BorderBrush="#FFD3D9E3">
<datagrid:DataGrid Name="DG" />
</Border>
<Border Grid.Column="1" BorderThickness="3" BorderBrush="#FFD3D9E3">
<sdk:DataGrid Name="GD" />
</Border>
</Grid>
</navigation:Page>
Dim DS As TestDSL
Public Sub New()
InitializeComponent()
DS = New TestDSL
DS.Load(DS.GetMemberUserQuery)
End Sub
Private Sub A1()
DG.ItemsSource = DS.MemberUsers
GD.ItemsSource = DS.MemberUsers
End Sub
Private Sub A2()
Dim aa = From i In DS.MemberUsers Select i.Name, i.Address
DG.ItemsSource = aa
GD.ItemsSource = aa
End Sub执行A1没有问题,,,可以正常显示结果,,,执行A2,Debug发现Datagrid有值,但只能显示空行,没有值显示出来
不吝赐教 -
<UserControl x:Class="DYCom股票客户端.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"
mc:Ignorable="d"
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
d:DesignHeight="371" d:DesignWidth="555"><Grid x:Name="LayoutRoot" Background="White">
<data:DataGrid Height="109" HorizontalAlignment="Left" IsReadOnly="True" Margin="10,10,0,0" x:Name="dg" VerticalAlignment="Top" Width="545" /> </Grid>
</UserControl>这个是我工作正常的xaml代码。
工程文件可以到以下地址下载:
-
<UserControl x:Class="DYCom股票客户端.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"
mc:Ignorable="d"
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
d:DesignHeight="371" d:DesignWidth="555"><Grid x:Name="LayoutRoot" Background="White">
<data:DataGrid Height="109" HorizontalAlignment="Left" IsReadOnly="True" Margin="10,10,0,0" x:Name="dg" VerticalAlignment="Top" Width="545" /> </Grid>
</UserControl>这个是我工作正常的xaml代码。
工程文件可以到以下地址下载:
晕死,在funsl.com网站新注册用户,报错说,发邮件失败,,,我拿不到密码,不能登陆下载你的工程文件,,,
不吝赐教 -
-
http://funsl.com/system/files/DYCom%E8%82%A1%E7%A5%A8%E7%A4%BA%E4%BE%8B.rar
非常感谢热情回复,,,你的工程文件下下来了,,,可以运行,,,但不知道怎么,Datagrid,chart都没有数据出来
看了一下源代码,,,你的Datagird绑定都是有对应实体类,,,而我想绑定匿名类,,,
问题还在啊,,,大家都没有我这个问题吗?
不吝赐教