如上图,gategory 加了小图标, 其他行内还有计算器,大图片   进度条等

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data; namespace DevExpress.XtraEditors.Demos {
/// <summary>
/// Summary description for MultiEditors.
/// </summary>
public partial class MultiEditors : TutorialControl {
public MultiEditors() {
//
// Required for Windows Form Designer support
//
InitializeComponent();
//TutorialInfo.WhatsThisCodeFile = "CS\\GridMainDemo\\Modules\\MultiEditors.cs";
//TutorialInfo.WhatsThisXMLFile = "DevExpress.XtraEditors.Demos.CodeInfo.MultiEditors.xml";
gridControl1.ForceInitialize();
InitData();
//
// TODO: Add any constructor code after InitializeComponent call
//
} #region Init
private Image GetImage(string name) {
System.IO.Stream str = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("DevExpress.XtraEditors.Demos.Images." + name);
if (str != null)
return Bitmap.FromStream(str);
return null;
} private byte[] ImageToByteArray(Image image) {
System.IO.MemoryStream mStream = new System.IO.MemoryStream();
image.Save(mStream, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] ret = mStream.ToArray();
mStream.Close();
return ret;
}
private void InitData() {
RecordOrder[] records = new RecordOrder[];
records[] = new RecordOrder(Properties.Resources.ProductName, "Mishi Kobe Niku", "Teatime Chocolate Biscuits", "Ipoh Coffee"); //第一行纯字符串
records[] = new RecordOrder(Properties.Resources.Category, , , ); //第二行带小图标 后边的 6 3 1 是imagelist 控件添加进去 的小图标的顺序号 .从1开始.
records[] = new RecordOrder(Properties.Resources.Supplier, "Tokyo Traders", "Specialty Biscuits, Ltd.", "Leka Trading");
records[] = new RecordOrder(Properties.Resources.QuantityPerUnit, "18 - 500 g pkgs.", "10 boxes x 12 pieces", "16 - 500 g tins");
records[] = new RecordOrder(Properties.Resources.UnitPrice, 97.00, 9.20, 46.00);
records[] = new RecordOrder(Properties.Resources.UnitsInStock, , , );
records[] = new RecordOrder(Properties.Resources.Discontinued, false, true, true);
records[] = new RecordOrder(Properties.Resources.LastOrder, new DateTime(, , ), new DateTime(, , ), new DateTime(, , ));
records[] = new RecordOrder(Properties.Resources.Picture, Properties.Resources.product1, Properties.Resources.product2, Properties.Resources.product3);
records[] = new RecordOrder(Properties.Resources.Relevance, , , ); gridControl1.DataSource = records;
}
#endregion
#region Grid events
//<gridControl1>
   //      Properties.Resources.Category  此处用了属性资源字符串 
gridView1_CustomRowCellEdit   是指定格子里的按钮等控件  比如repositoryItemImageComboBox1 是通过repository 入口进行设置


        private void gridView1_CustomRowCellEdit(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e) {
if (e.Column.FieldName != "Category") {
RecordOrder rec = gridView1.GetRow(e.RowHandle) as RecordOrder;
if (rec.Category == Properties.Resources.Category) e.RepositoryItem = repositoryItemImageComboBox1;
if (rec.Category == Properties.Resources.Supplier) e.RepositoryItem = repositoryItemComboBox1;
if (rec.Category == Properties.Resources.UnitPrice) e.RepositoryItem = repositoryItemCalcEdit1;
if (rec.Category == Properties.Resources.UnitsInStock) e.RepositoryItem = repositoryItemSpinEdit1;
if (rec.Category == Properties.Resources.Discontinued) e.RepositoryItem = repositoryItemCheckEdit1;
if (rec.Category == Properties.Resources.Discontinued) e.RepositoryItem = repositoryItemCheckEdit1;
if (rec.Category == Properties.Resources.LastOrder) e.RepositoryItem = repositoryItemDateEdit1;
if (rec.Category == Properties.Resources.Picture) e.RepositoryItem = repositoryItemPictureEdit1;
if (rec.Category == Properties.Resources.Relevance) e.RepositoryItem = repositoryItemProgressBar1;
}
}
//</gridControl1> private void gridView1_RowCellDefaultAlignment(object sender, DevExpress.XtraGrid.Views.Base.RowCellAlignmentEventArgs e) {
if (e.Column.FieldName != "Category") {
if (e.RowHandle == || e.RowHandle == )
e.HorzAlignment = DevExpress.Utils.HorzAlignment.Far;
if (e.RowHandle == )
e.HorzAlignment = DevExpress.Utils.HorzAlignment.Center;
}
} //<gridControl1>
/*
~Set custom height for row 8:
*/
private void gridView1_CalcRowHeight(object sender, DevExpress.XtraGrid.Views.Grid.RowHeightEventArgs e) {
if (e.RowHandle == ) e.RowHeight = ;
}
//</gridControl1> #endregion
#region RepositoryItems events
private void repositoryItemProgressBar1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e) {
int i = ;
if (gridView1.ActiveEditor == null) return; if (e.KeyChar == '+') {
i = (int)gridView1.ActiveEditor.EditValue;
if (i < )
gridView1.ActiveEditor.EditValue = i + ;
}
if (e.KeyChar == '-') {
i = (int)gridView1.ActiveEditor.EditValue;
if (i > )
gridView1.ActiveEditor.EditValue = i - ;
}
}
#endregion
}
}
using System;
namespace DevExpress.XtraEditors.Demos {
public class RecordOrder {
private string fcategory;
private object fproduct1;
private object fproduct2;
private object fproduct3; public RecordOrder(string fcategory, object fproduct1, object fproduct2, object fproduct3) {
this.fcategory = fcategory;
this.fproduct1 = fproduct1;
this.fproduct2 = fproduct2;
this.fproduct3 = fproduct3;
} public string Category {
get { return fcategory; }
} public object Product1 {
get { return fproduct1; }
set { fproduct1 = value; }
} public object Product2 {
get { return fproduct2; }
set { fproduct2 = value; }
} public object Product3 {
get { return fproduct3; }
set { fproduct3 = value; }
}
}
}

对于devexpress gridview 内插图加加进度条等的一点解读的更多相关文章

  1. DevExpress GridControl 单元格添加进度条(ProgressBar)

    首先可以使用DevExpress GridControl 自带的进度条控件. 但是我要用一个方法来设置所以的单元格进度,而不是每个单元格都要设置一遍,同时我想要根据进度值不同,进度条显示不同的颜色. ...

  2. jquery 实现拖动文件上传加进度条

    通过对文件的拖动实现文件的上传,主要用到的是HTML5的ondrop事件,上传内容通道FormData传输: //进度条 <div class="parent-dlg" &g ...

  3. easyui datagrid 单元格加进度条(亲测可用)

    {field: 'DataItemNum', title: '数据完整度', width: 100, formatter: function (v, r, i) { var p = (v / 27) ...

  4. layui 文件上传加进度条

    1.页面 <div class="layui-row layui-col-space5"> <div class="layui-form-item&qu ...

  5. 微信小程序-上传多张图片加进度条(支持预览、删除)

    2018-12-24 详情示例见:https://www.cnblogs.com/cisum/p/9564898.html 2018-12-29 组件下载见:https://www.cnblogs.c ...

  6. Js异步上传加进度条

    http://www.ruanyifeng.com/blog/2012/09/xmlhttprequest_level_2.html http://www.cnblogs.com/yuanlong10 ...

  7. 纯H5 AJAX文件上传加进度条功能

    上传代码js部分 //包上传 $('.up_apk').change(function () { var obj = $(this); var form_data = new FormData(); ...

  8. 在DevExpress GridControl中添加进度条控件 z

    首先可以使用 DevExpress GridControl 自带的进度条控件. 但是我要用一个方法来设置所有的单元格进度,而不是每个单元格都要设置一遍,同时我想要根据进度值不同,进度条显示不同的颜色. ...

  9. 关于JFace中的进度条对话框(ProgressMonitorDialog类)

    在Windows操作系统中,最常用的进度条对话框就是文件复制时的弹出框,如果想让用户愉快的使用你开发 的软件,那么在执行某个较长时间的操作时候,就应该弹出一个进度条提示框,告诉用户程序正在做什么. 做 ...

随机推荐

  1. 18.2 不同用户 不同颜色光标 redis

    上次,我们完成了 change 这个event 通过 collaborationsrvice 与 server 进行 sockrt io 将 client端的监听的 change 发给 server ...

  2. webpack相关配置

    cd 项目文件夹 npm init -y npm install jquery -S //生成node_modules 下载好jquery 创建webpack.config.js module.exp ...

  3. SPSS-方差分析

    方差分析(单因素方差分析.多因素方差分析.协方差分析) 基本概念:进行两组以上均数的比较,检验两个或两个以上样本均数差别的显著性(T检验主要是检验两个样本均数差别的显著性)              ...

  4. 用JS和JQ来获取子节点!

    用JS和JQ来获取子节点!   在JS中,如果通过document.getElementsByTagName来获取子元素有个弊端:它不单会获取符合要求的子元素,就连同孙元素也会获取.如果有特殊要求,那 ...

  5. 关于log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).的问题

    解决办法(非长久之计,折中) 将该方法插入到main函数中,可以自行打印日志信息了 BasicConfigurator.configure(); //自动快速地使用缺省Log4j环境.原文链接:htt ...

  6. MyBatis数据库连接的基本使用-补充Mapper映射器

    补充 Mapper映射器的使用: Mapper映射器,google添加.Mapper映射器是将mapper.xml中配置的sql id,parameterType和resultMap按照规则一一映射到 ...

  7. js 中的原型链与继承

    ECMAScript中将原型链作为实现继承的主要方法,其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法. 1.原型链 先回忆一下构造函数和原型以及实例的关系:每个构造函数都有一个原型对 ...

  8. smtp扫描

    nc扫描 nc -nv ip号 25 nmap扫描

  9. Android开发之getX,getRawX,getWidth,getTranslationX等的区别

    转载请注明出处:http://blog.csdn.net/dmk877/article/details/51550031      好久没写博客了,最近工作确实挺忙的,刚刚结束了一个TV项目的开发,对 ...

  10. Centos 下使用VLAN+Bridge 搭建KVM基础网络环境

    一.使用环境介绍 宿主机上同时运行多网段虚拟机,为了解决宿主机网卡资源紧张问题,采用如下网络模式:(本实验vlan 105:192.168.5.x    vlan108:192.168.8.x) 二. ...