C#中更改DataTable某列的值,格式化显示指定列的数据
生活随笔
收集整理的这篇文章主要介绍了
C#中更改DataTable某列的值,格式化显示指定列的数据
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
场景
通过数据库查询出来的数据为DataTable,将其设置为DataGridView的数据源。
但是查询出来的数据某一列可能不是想要展示的格式。
比如某DataTable的第三列的数据都是如下格式
而我们想要展示的格式如下
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
将DataTable传递到工具类方法中
public static void ConvertComponentsToText(DataTable table){for (int i = 0; i < table.Rows.Count; i++){//获取原来每行第三列的数据string oldNum = table.Rows[i][2].ToString();//将其分隔string[] arrayNum = oldNum.Split(',');string Text = "";//循环取每个数字foreach (string b in arrayNum){//通过全局键值对字典获取对应的中文Valuestring name = Global.ComponentsKeyValue.Where(q => q.Key == b).First().Value.ToString();Text += name;Text += ",";}//截取,去掉最后一个逗号Text = Text.Substring(0, Text.Length - 1);//给当前行的地三列赋值table.Rows[i][2] = Text;}}上面是通过table.Rows[i][2].ToString()循环获取每行的第三列并通过 table.Rows[i][2] = Text将新的值赋值回去。
其中Global.ComponentsKeyValue全局键值对字典的内容如下
首先新建全局变量类Global,然后声明全局字段来存取键值对。
Dictionary<string, string> _componentsKeyValue = new Dictionary<string, string>(){{"1", "霸道"},{"2", "流氓"},{"3", "气质"},{"4", "你好"},{"5", "下午好"},{"6", "嗯呢"}};然后再新建全局属性来获取此键值对
public Dictionary<string, string> ComponentsKeyValue{get{return this._componentsKeyValue;}}
总结
以上是生活随笔为你收集整理的C#中更改DataTable某列的值,格式化显示指定列的数据的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: C#中使用键值对存取值并使用Linq通过
- 下一篇: C#中枚举类型的声明与使用举例