博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BindingMemberInfo
阅读量:6907 次
发布时间:2019-06-27

本文共 610 字,大约阅读时间需要 2 分钟。

要求实现ListBox中Item的OwnerDraw,
发现在使用DataBinding时DrawItem 事件中ListBox.Items[e.Index].ToString()返回的都是 DataRowView类型,
第一次尝试:
直接cast成DataRowView,然后用DisplayMember来获取对应列的值
DataRowView drv = listBox1.Items[e.Index] as DataRowView;
String drawText = drv[listBox1.DisplayMember].ToString();
一开始工作的很好,但是后来发现如果当DataSource是一个DataSet object,而DataMember是“TableName.ColumnName”时无法工作。
查找文档发现有一个工具类BindingMemberInfo,可以解析这个字符串。
试了一下果然奏效,
BindingMemberInfo info = new BindingMemberInfo(listBox1.DisplayMember);
String drawText = drv[info.BindingField].ToString();
搞定收工!

转载于:https://www.cnblogs.com/jonnyyu/archive/2004/02/05/937.html

你可能感兴趣的文章
PyCharm快捷键
查看>>
FTP服务器配置和管理
查看>>
cruise-control
查看>>
Python log() 函数
查看>>
JS组件系列——显示隐藏密码切换的jQuery插件
查看>>
PaaS 调研:GAE与 AWS(上)
查看>>
Arcgis栅格时序地图制作---时间轴动态展示多期影像
查看>>
第十一章 dubbo通信框架-netty4
查看>>
item.imageInsets =
查看>>
sprintf的Bug
查看>>
Git 经常使用命令
查看>>
Postman安装
查看>>
欧几里得算法与扩展欧几里得算法
查看>>
获取表结构信息(字段名,类型,长度,精度,小数位数,主键,自动增长)...
查看>>
asp.net core中使用log4net
查看>>
SVNKit学习——wiki+简介(二)
查看>>
经营操作系统的一些思路
查看>>
#HDU 3790 最短路径问题 【Dijkstra入门题】
查看>>
《学习》4集合函数与分组
查看>>
配置ssh的config文件-为每个ssh连接创建别名
查看>>