当前位置:网站首页>DevExpress中针对指定列进行百分比转换
DevExpress中针对指定列进行百分比转换
2022-08-05 05:40:00 【牛奶咖啡13】
一、业务需求
目前使用DevExpress控件开发的项目中,需要对表格(GirdView)的指定列或多列内容进行转为百分比显示(比如:将0.39转为39%以此类推)。
二、需求分析
实现对表格列的内容转为百分比有3种思路:
①直接对指定列的数据进行百分比处理,即(获取到指定列的数据,然后乘以100在添加百分比(%)符号);
②直接使用GridView自带的【DisplayFormat.FormatString】内容进行设置进行百分比显示(P2表示保留小数点后2位的百分比【比如:0.3956转为39.56%】);
③直接给数字后面添加百分比符号(比如:39转为39%)
三、实现方法
这里以使用GridView自带的【DisplayFormat.FormatString】内容进行设置进行百分比显示和直接给数字后面添加百分比符号(比如:39转为39%)进行实现说明:
3.1、必须先将需要转为百分比的列值转为数字格式
注意:转换格式方法必须在dataTable数据附值前
//设置列数据类型为double
dt.Columns[列名称].DataType = typeof(数据类型);
//比如:设置线宽数据类型为double
dt.Columns["TRIAL_LINEWIDTH"].DataType = typeof(double);3.2、转换指定列或多列为百分比的代码
/// <summary>
/// 设置表格所有单元格都保留2位小数
/// </summary>
/// <param name="gridView">gridView组件</param>
public static void ResreserveTwoBit(GridView gridView)
{
if (gridView != null && gridView.Columns.Count > 0)
{
int count = gridView.Columns.Count;
for (int i = 0; i < count; i++)
{
gridView.Columns[i].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[i].DisplayFormat.FormatString = "F2";
}
}
}
/// <summary>
/// 设置表格指定单元格都保留2位小数
/// </summary>
/// <param name="gridView">gridView组件</param>
/// <param name="startColumnIndex">开始列索引</param>
/// <param name="endColumnIndex">结束列索引</param>
public static void ResreserveTwoBit(GridView gridView, int startColumnIndex, int endColumnIndex)
{
if (gridView != null && gridView.Columns.Count > 0 &&
startColumnIndex > 0 && endColumnIndex > 0 &&
endColumnIndex <= gridView.Columns.Count)
{
//int count = gridView.Columns.Count;
for (int i = startColumnIndex; i <= endColumnIndex; i++)
{
gridView.Columns[i].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[i].DisplayFormat.FormatString = "F2";
}
}
}
/// <summary>
/// 设置表格指定单元格都保留2位小数
/// </summary>
/// <param name="gridView">gridView组件</param>
/// <param name="startColumnIndex">开始列索引</param>
/// <param name="endColumnIndex">结束列索引</param>
public static void ResreserveTwoBit(GridView gridView, string columnName)
{
if (gridView != null && gridView.Columns.Count > 0 && !string.IsNullOrEmpty(columnName))
{
gridView.Columns[columnName].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[columnName].DisplayFormat.FormatString = "F2";
}
}
/// <summary>
/// 设置表格指定单元格都使用百分比
/// </summary>
/// <param name="gridView">gridView组件</param>
/// <param name="startColumnIndex">开始列索引</param>
/// <param name="endColumnIndex">结束列索引</param>
public static void SetPercentage(GridView gridView, int startColumnIndex, int endColumnIndex)
{
if (gridView != null && gridView.Columns.Count > 0 &&
startColumnIndex > 0 && endColumnIndex > 0 &&
endColumnIndex <= gridView.Columns.Count)
{
//int count = gridView.Columns.Count;
for (int i = startColumnIndex; i <= endColumnIndex; i++)
{
gridView.Columns[i].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[i].DisplayFormat.FormatString = "P2";
}
}
}
/// <summary>
/// 设置表格指定单元格都使用百分比
/// </summary>
/// <param name="gridView">gridView组件</param>
/// <param name="columnName">列名称</param>
public static void SetPercentage(GridView gridView, string columnName)
{
if (gridView != null && gridView.Columns.Count > 0 && !string.IsNullOrEmpty(columnName))
{
gridView.Columns[columnName].DisplayFormat.FormatType= FormatType.Numeric;
gridView.Columns[columnName].DisplayFormat.FormatString = "P2";
}
}
/// <summary>
/// 设置表格指定单元格都使用百分比
/// </summary>
/// <param name="gridView">gridView组件</param>
/// <param name="columnName">列名称</param>
/// <param name="keepDecimalPlaces">保留的小数位数(默认保留2位)</param>
public static void SetPercentage(GridView gridView, string columnName,string keepDecimalPlaces="P2")
{
if (gridView != null && gridView.Columns.Count > 0 && !string.IsNullOrEmpty(columnName) && !string.IsNullOrEmpty(keepDecimalPlaces))
{
gridView.Columns[columnName].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[columnName].DisplayFormat.FormatString = keepDecimalPlaces;
}
}
/// <summary>
/// 给表格指定单元格都保留2位小数后添加%号
/// </summary>
/// <param name="gridView"></param>
/// <param name="startColumnIndex"></param>
/// <param name="endColumnIndex"></param>
public static void SetResreserveTwoBitAndPercentageChar(GridView gridView, int startColumnIndex, int endColumnIndex)
{
if (gridView != null && gridView.Columns.Count > 0 &&
startColumnIndex > 0 && endColumnIndex > 0 &&
endColumnIndex <= gridView.Columns.Count)
{
for (int i = startColumnIndex; i <= endColumnIndex; i++)
{
gridView.Columns[i].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[i].DisplayFormat.FormatString = $"{0:N2}'%'";
}
}
}
/// <summary>
/// 给表格指定单元格都保留2位小数后添加%号
/// </summary>
/// <param name="gridView"></param>
/// <param name="columnName">列名称</param>
public static void SetResreserveTwoBitAndPercentageChar(GridView gridView, string columnName)
{
if (gridView != null && gridView.Columns.Count > 0 && !string.IsNullOrEmpty(columnName))
{
gridView.Columns[columnName].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[columnName].DisplayFormat.FormatString = $"{0:N2}'%'";
}
}
/// <summary>
/// 给表格指定单元格都添加%符号,不做运算
/// </summary>
/// <param name="gridView"></param>
/// <param name="columnName"></param>
public static void SetPercentageChar(GridView gridView, string columnName)
{
if (gridView != null && gridView.Columns.Count > 0 && !string.IsNullOrEmpty(columnName))
{
gridView.Columns[columnName].DisplayFormat.FormatType = FormatType.Numeric;
gridView.Columns[columnName].DisplayFormat.FormatString = $"{0}'%'";
}
}边栏推荐
- ES2020新特性
- D39_Vector
- 淘宝宝贝页面制作
- 指针常量与常量指针 巧记
- 农场游戏果园系统+牧场养殖系统+广告联盟模式流量主游戏小程序APP V1
- Teach you simple steps to achieve industrial raspberries pie properly installed RS232 USB drive
- selenium learning
- H5开发调试-Fiddler手机抓包
- Error correction notes for the book Image Processing, Analysis and Machine Vision
- DevOps - Understanding Learning
猜你喜欢

System basics - study notes (some command records)

Chengyun Technology was invited to attend the 2022 Alibaba Cloud Partner Conference and won the "Gathering Strength and Going Far" Award

LaTeX 图片加标题 文本分栏自动换行

VRRP overview and experiment

input detailed file upload

Collision, character controller, Cloth components (cloth), joints in the Unity physics engine

export使用

DevOps流程demo(实操记录)

BIO,NIO,AIO实践学习笔记(便于理解理论)

Linux中安装Redis教程
随机推荐
What is the website ICP record?
获取预训练模型的网络输入尺寸
在小程序中关于js数字精度丢失的解决办法
Collection of error records (write down when you encounter them)
MySQL的主从模式搭建
系统基础-学习笔记(一些命令记录)
Shadowless Cloud Desktop
单片机期末复习大题
D41_buffer pool
邮件管理 过滤邮件
Q 2020, the latest senior interview Laya soul, do you know?
The 25 best free games on mobile in 2020
【FAQ】CCAPI Compatible EOS Camera List (Updated in August 2022)
scikit-image图像处理笔记
D39_ coordinate transformation
document.querySelector() method
Native JS takes you to understand the implementation and use of array methods
更改小程序原生radio的颜色及大小
Error correction notes for the book Image Processing, Analysis and Machine Vision
Cocos Creator Mini Game Case "Stick Soldier"