silverlight datagrid绑定匿名类
原文 http://www.cnblogs.com/luweis/archive/2011/10/21/2220587.html
刚开始遇到的一个问题是这样的,我有一个datagrid,根据不同的条件可以绑定上不同的数据源,或者根据同一个数据源,所要展示的数据字段是不一样的,所以我不能再xaml中把字段给写死了,我第一想到的方法如下: ds_t.fake_proc_T_AP_PMs.Clear();
ds_t.Load(ds_t.Proc_T_AP_PMQuery("2011-07-01", "2011-10-10", cbb_method.SelectedIndex),
(lo)=>
{
var query = from i in lo.Entities
select new {
i.AP名称,
i.MAC地址,
i.AP关联用户数,
i.CPU利用率,
i.内存利用率,
i.上行速率,
i.下行速率,
i.关联用户总数,
i.在线用户总数,
i.每用户关联次数,
i.上行流量,
i.下行流量
}; this.PMGrid.ItemsSource = query; 但是代码中还是会报错,我google了一下,发现datagrid无法绑定匿名类,那好吧,我还是构造一个类吧
ds_t.Load(ds_t.Proc_T_AP_PMQuery("2011-07-01", "2011-10-10", cbb_method.SelectedIndex),
(lo)=>
{
var query = from i in lo.Entities
select new AP_BASE{
AP名称= i.AP名称,
MAC地址= i.MAC地址
...
}; this.PMGrid.ItemsSource = query.ToList<AP_BASE>(); 无奈,还是跟原来的错误是一样的,看到网上有这样的说法:This is Silverlight security restriction - you cannot reflect internal types and anonymous type are internal 这个是在telerik中的论坛找到了http://www.telerik.com/community/forums/silverlight/gridview/gridview-anonymous-types-wont-bind.aspx 因为我本身用到的是RadGridview,
看来这个方法行不通,有时候http://stackoverflow.com这里找找还是蛮有用的,
在AssemblyInfo.cs中添加
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("System.Windows")]
即可, 不过得用SilverlightToolkit中的DataGrid才行,Telerik的Gridview还是报错。 参考文章: http://www.devcurry.com/2011/04/silverlight-4-databinding-with.html http://blog.lab49.com/archives/2306 http://forums.silverlight.net/p/55332/266134.aspx http://stackoverflow.com/questions/6193387/populating-datagrid-in-wpf-with-anonymous-type-collection http://blogs.msdn.com/b/mikehillberg/archive/2008/05/05/binding-to-anonymous-types-in-an-xbap-or-silverlight.aspx http://forums.silverlight.net/t/160324.aspx/1 key:gridview anonymous type
silverlight datagrid绑定匿名类的更多相关文章
- VS2010 MFC DataGrid绑定实例
VS2010环境下MFC使用DataGrid绑定数据源 参考:http://blog.csdn.net/fddqfddq/article/details/7874706 详细介绍如何在MFC中使用Da ...
- c# 把一个匿名对象赋值给一个Object类型的变量后,怎么取这个变量? c# dynamic动态类型和匿名类 详解C# 匿名对象(匿名类型)、var、动态类型 dynamic 深入浅析C#中的var和dynamic
比如有一个匿名对象,var result =......Select( a=>new { id=a.id, name=a.name});然后Object obj = result ;我怎 ...
- silverlight DataGrid 显示篇
silverlight DataGrid 显示篇 分类: Silverlight2012-05-12 21:55 693人阅读 评论(0) 收藏 举报 datagridsilverlightbindi ...
- easyui datagrid 绑定json对象属性的属性
今天用easyui 的datagrid绑定数据时,后台提供的数据是实体类类型的,其中有一个实体类A的属性b是另一个实体类B类型的,而前台需要显示b的属性c,这下就悲剧了,前台没法直接绑定了,后来脑筋一 ...
- 浅谈Java的匿名类
在实际的项目中看到一个很奇怪的现象,Java可以直接new一个接口,然后在new里面粗暴的加入实现代码.就像下面这样.那么问题来了,new出来的对象没有实际的类作为载体,这不是很奇怪吗? 思考以下代码 ...
- Second Day: 关于Button监听事件的三种方法(匿名类、外部类、继承接口)
第一种:通过匿名类实现对Button事件的监听 首先在XML文件中拖入一个Button按钮,并设好ID,其次在主文件.java中进行控件初始化(Private声明),随后通过SetOnClickLis ...
- 学习笔记:因为java匿名类学习到接口的一些小用法
在看CometD的示例代码时发现了许多有意思的代码,但说实话看别人的代码确实是件很累的事情,所以就看到这个知识点做一下记录吧. 先看一段代码: 代码1 这段代码中有一个new的操作,而且是在方 ...
- .NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法
开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以, ...
- HttpCookie加匿名类实现多语言
突然想做一个多语言网站,确不知道怎么实现好,突然想到了HttpCookie,然后页面后台用匿名类实现语言的储存. string lan = Request["str_lan"]; ...
随机推荐
- WireShark抓包软件的使用
在大学的时候学习的计算机网络的具体的知识,也使用过wireshark去抓取一些网络的封包用来分析,但是都没能系统的写一篇博客,今天总结一下吧. wireshark介绍 wireshark的官方下载网站 ...
- 贝叶斯网络基础(Probabilistic Graphical Models)
本篇博客是Daphne Koller课程Probabilistic Graphical Models(PGM)的学习笔记. 概率图模型是一类用图形模式表达基于概率相关关系的模型的总称.概率图模型共分为 ...
- mysql server advanced 5.6基于oracle linux 6.6的安装
mysql 安装有两种,rpm安装和源码包安装,两种包都可以从www.mysql.com官网下载,这次我测试下rpm安装方式. 1.安装环境以及mysql版本: 1.1vcenter 虚拟机环境 1. ...
- javascript 数据结构和算法读书笔记 > 第一章 javascript的编程环境和模型
1.变量的声明和初始化 必须使用关键字 var,后跟变量名,后面还可以跟一个赋值表达式. var name; var age = 5; var str = 'hello'; var flg = fal ...
- 根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V1.0
#region 根据群ID和用户Id查询 + string QueryQunByUserIdAndQunId(int userId, int qunId) V1.0 /// <summary ...
- linux自带有usb驱动,为什么还需要libusb呢
linux里的软件分为用户层和内核层两种.比如内核里编译了温度传感器的驱动,还得有lm-sensors在用户层负责解释处理内核递交出的数据.usb驱动是硬件驱动方面的东西,libusb是给应用软件开发 ...
- floodlight 学习(一)
其实这个控制器应该没有多少人用了吧,一年多都没更新了,鉴于最近无论如何都要用这个,将学习笔记贴出来吧. 1.FloodlightProvider(Dev) 1.1简介:FloodlightProvid ...
- 高仿精仿微信应用ios源码下载
微信,超过3亿人使用,能够通过手机网络给好友发送语音.文字消息.表情.图片和视频,还可以分享照片到朋友圈.通过摇一摇.查看附近的人,你可以认识新的朋友.使用扫一扫,你可以扫描二维码.条码.图书和街景. ...
- 网易云课堂_程序设计入门-C语言_第二周:判断_1时间换算
1 时间换算(5分) 题目内容: UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8.现在,你的程序要读入一个整数,表示BJT的时和分.整数的个位和十位表示分,百位和千位表示小时.如果 ...
- sdut 3-5 学生成绩统计
3-5 学生成绩统计 Time Limit: 1000MS Memory limit: 65536K 题目描写叙述 通过本题目练习能够掌握对象数组的使用方法,主要是对象数组中数据的输入输出操作. 设计 ...