更改DEVExpress的Column的DisplayFormat为自定义的方法。

 public partial class Form1 : XtraForm
{
public Form1()
{
InitializeComponent();
InitGrid();
gridView1.Columns[].DisplayFormat.FormatType = DevExpress.Utils.FormatType.Custom;
gridView1.Columns[].DisplayFormat.Format = new MyExamFormat();
} public class MyExamFormat : IFormatProvider, ICustomFormatter
{
public string NumberToChinese(int num)
{
string numStr = "";
string chineseStr = "零一二三四五六七八九";
if (num >= && num <= ) { return chineseStr[numStr.IndexOf(num.ToString()[])].ToString(); }
else if (num >= && num <= ) { if (num == ) { return "十"; } return "十" + chineseStr[numStr.IndexOf(num.ToString()[])].ToString(); }
else if (num >= && num <= )
{
if (num % == ) { return chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "十"; }
else return chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "十" + chineseStr[numStr.IndexOf(num.ToString()[])].ToString();
}
else if (num >= && num <= )
{
if (num % == ) { return chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "百"; }
else return chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "百" +
((int.Parse(num.ToString().Substring().ToString()).ToString().Length != (num.ToString().Length - )) ?
"零" + NumberToChinese(int.Parse(num.ToString().Substring()))
: NumberToChinese(int.Parse(num.ToString().Substring())));
}
else if (num >= && num <= )
{
if (num % == ) { return chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "千"; }
else return
chineseStr[numStr.IndexOf(num.ToString()[])].ToString() + "千" +
((int.Parse(num.ToString().Substring().ToString()).ToString().Length != (num.ToString().Length - )) ?
"零" + NumberToChinese(int.Parse(num.ToString().Substring()))
: NumberToChinese(int.Parse(num.ToString().Substring())));
}
return num.ToString();
} public object GetFormat(Type formatType)
{
if (formatType == typeof(ICustomFormatter))
{
return this;
}
else return null;
} public string Format(string format, object arg, IFormatProvider formatProvider)
{
return "第" + NumberToChinese(int.Parse(arg + "")) + "题";
}
}
BindingList<Person> gridDataList = new BindingList<Person>();
void InitGrid()
{
gridDataList.Add(new Person("John", "Smith", ));
gridDataList.Add(new Person("Gabriel", "Smith", ));
gridDataList.Add(new Person("Ashley", "Smithfdsaf", ));
gridDataList.Add(new Person("Adrian", "some comment", ));
gridControl.DataSource = gridDataList;
} }

显示效果如下:

宋兴柱博客地址:http://www.cnblogs.com/songxingzhu

更改DEVExpress的Column的DisplayFormat为自定义的方法。的更多相关文章

  1. DevExpress的GridControl控件设置自定义显示方法

    比如要显示性别为字符串,数据库中保存为数值(1:男,2:女,3:未知). 方法一: 点击控件上的"Run Designer"按钮,进入设计界面. 选择“Columns", ...

  2. [BS-19]更改UITextField的placeholder文字颜色的5种方法

    更改UITextField的placeholder文字颜色的5种方法 想要达到的目标是:一个页面上有多个UITextField,当用户聚焦某textField时,该文本框的placeholder的文字 ...

  3. 【转】OpenWRT开发自定义应用方法

    [转]OpenWRT开发自定义应用方法 转自:http://blog.csdn.net/rudyn/article/details/38616783 OpenWRT编译成功完成后,所有的产品都会放在编 ...

  4. validate插件深入学习-04自定义验证方法

    自定义验证方法 jQuery.validator.addMethod(name,method,[,message]) name: 方法名 method: function(value,element, ...

  5. Jquery自定义扩展方法(二)--HTML日历控件

    一.概述 研究了上节的Jquery自定义扩展方法,自己一直想做用jquery写一个小的插件,工作中也用到了用JQuery的日历插件,自己琢磨着去造个轮子--HTML5手机网页日历控件,废话不多说,先看 ...

  6. Jquery自定义扩展方法(一)

    jquery是一款流行的JS框架,自定义JS方法,封装到Jquery中,调用起来也挺方便的,怎么写Jquery扩展方法那,网上翻阅了一部分代码,其实也挺简单的: 方式一: (jQuery.fn.set ...

  7. jqery validate、validate自定义验证方法 + jaery form Demo

    校验规则 required:true  必输字段 remote:"check.php"  使用ajax方法调用check.php验证输入值 email:true  必须输入正确格式 ...

  8. OC中实例变量可见度、setter、getter方法和自定义初始化方法

    在对类和对象有一定了解之后,我们进一步探讨实例变量的可见度等相关知识 实例变量的可见度分为三种情况:public(共有),protected(受保护的,默认),private(私有的),具体的不同和特 ...

  9. Sails 自定义 model 方法

    Sails 自定义 model 方法 在 Sails 中 model 提供了一些原生的静态方法,如 .create(), .update(), .destroy(), .find(), 等. 在实际业 ...

随机推荐

  1. phpcms v9 中get的mysql查询表某字段最大值数据,表某字段不重复数据

    直切正题 1.表tb中字段num最大的数据 {pc:get $sql="select * from tb where num=(select MAX(num) from tb)"} ...

  2. spyder常用快捷键

    Ctrl + 1: 注释/反注释 Ctrl + 4/5: 块注释/块反注释 Ctrl + L: 跳转到行号 Tab/Shift + Tab: 代码缩进/反缩进 Ctrl +I:显示帮助

  3. ubuntu 14.04 下安装jdk8及 smartgithg

    公司使用git作为源码管理,又需要在ubuntu下工作,然后,自己就找了找,目前ubuntu下的git gui客户端,感觉 smartgit算是其中比较好用的一个,下边是具体安装步骤 说明,smart ...

  4. PHP 学习笔记 01

    例子: 为什么要学PHP 主观原因: 前段时间在学校处理了毕业的一些事情,回到上海后开始了找工作的旅程.意向工作是WPF开发或者ASP.NET 作为后端的WEB开发. 陆陆续续一直在面试,其中有一家公 ...

  5. 安装Oracle11g时,检测到系统的主 IP 地址是 DHCP 分配的地址

    检查完成.此次检查的总体结果为: 失败 <<<< 问题: 安装检测到系统的主 IP 地址是 DHCP 分配的地址. 建议案: Oracle 支持在具有 DHCP 分配的 IP ...

  6. OpenStack:初识

    OpenStack提纲:-------------------------------------------初识OpenStack, 千头万绪, 不知所措. 逐渐剥茧抽丝, 厘清思路...一. Op ...

  7. (转)前端构建工具gulp入门教程

    前端构建工具gulp入门教程 老婆婆 1.8k 2013年12月30日 发布 推荐 10 推荐 收藏 83 收藏,20k 浏览 本文假设你之前没有用过任何任务脚本(task runner)和命令行工具 ...

  8. 使用AnkhSvn-2.5.12478.msi管理vs2013代码的工具安装步骤使用

    安装好AnkhSvn后,按照上面红色画出来的图,进行操作: 需要安装的文件有: AnkhSvn-2.5.12478.msi LanguagePack_1.8.5.25224-x64-zh_CN.msi ...

  9. C++ 类的前置声明

    http://www.2cto.com/kf/201311/260705.html    今天在研究C++”接口与实现分离“的时候遇到了一个问题,看似很小,然后背后的东西确值得让人深思!感觉在学习的过 ...

  10. QT实现软件重启

    //重启软件 void MainWindow::on_pushButton_UI_reboot_clicked() { //方式1 需要主函数中事件循环判断 //qApp->exit(773); ...