基本用法

1.新建一个winformAPP 放一个gridControl 为gridC 再放一个button 用法与dataGrid一样

代码如下:

        /// <summary>
/// 显示数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123;database=test"))
{
using (SqlDataAdapter ada = new SqlDataAdapter("select * from users ", con))
{
DataTable dt = new DataTable();
ada.Fill(dt); grdC.DataSource = dt;
}
}
}

2.取选中行标

GridView.FocusedRowHandle

3.不可编辑

gridview -->OptionsBehavior -->Editable=false

4.主从表(重点是 dataset 里有两个可以关联的表  建立两表的联系  再给dataset)

 string str = @"SELECT VPG.CustomerCode AS 客户编码, cus.CustomerName AS 客户名称, VPG.ProtectionGroupName AS 保护机组,
VPG.ConfiguredRpoSenconds RPO秒, VPG.Status AS 状态, VPG.VmsCount AS 虚拟机数量, VPG.Priority AS 优先级,
VPG.ProvisionedStorageInMB AS 总空间, VPG.UsedStorageInMB AS 已用空间,ProtectionGroupId
FROM dbo.Tbl_UDC_ProtectionGroupStatus AS VPG LEFT OUTER JOIN
dbo.Tbl_UDC_CustomerList AS cus ON VPG.CustomerCode = cus.CustomerCode where 1=1 ";
//VPG.ActualRPO, VPG.ActualRTO, VPG.ProtectionGroupId, VPG.SiteId 这几个可能没有用 if (this.CusCode != "")
str = str + string.Format(" and VPG.customerCode = '{0}'", this.CusCode); str = str + @" select VmName VM名称,Status 状态,Priority 优先级,ProvisionedStorageInMB 总容量 ,JournalUsedStorageMb 已用空间,VpgId,CustomerCode from Tbl_UDC_VmResourceInfo"; DataSet dsMD = dh.GetDataSet(str); DataRelation relation = new DataRelation("VPG", dsMD.Tables[].Columns["ProtectionGroupId"], dsMD.Tables[].Columns["VpgId"]);
dsMD.Relations.Add(relation); gcVPG.DataSource = dsMD.Tables[];

5.样式

gridControl-->LookAndFeel-->UsedDefaultLookAndFree=false-->skinName(改下下就可以了)

6.动态创建 GridControl 读取数据 并第一列设定记录行数

GridControl grid = new GridControl();
GridView gv = new GridView();
gv.OptionsView.ShowFooter = true;
gv.OptionsView.ShowGroupPanel = false;
gv.OptionsView.ColumnAutoWidth = false;
grid.MainView = gv;
grid.Dock = DockStyle.Fill; this.Controls.Add(grid); using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123;database=test"))
{
using (SqlDataAdapter adp = new SqlDataAdapter("select * from tbl_test ", con))
{
DataTable dt = new DataTable();
adp.Fill(dt); grid.DataSource = dt;
} } gv.Columns[].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Count;

C# WinfForm 控件之dev表格 GridControl的更多相关文章

  1. 玩转控件:对Dev的GridControl控件扩展

    缘由 一切实现来源于需求,目的在于不盲目造轮子,有小伙伴儿在看了<玩转控件:对Dev中GridControl控件的封装和扩展>文章后,私信作者说,因公司业务逻辑比较复杂,展示字段比较多,尤 ...

  2. 玩转控件:对Dev中GridControl控件的封装和扩展

    又是一年清明节至,细雨绵绵犹如泪光,树叶随风摆动.... 转眼间,一年又过去了三分之一,疫情的严峻让不少企业就跟清明时节的树叶一样,摇摇欲坠.裁员的裁员,降薪的降薪,996的996~~说起来都是泪,以 ...

  3. C# WinfForm 控件之dev电子表格 SpreadSheet

    网上找了一些资料可是不得入门 只能再回过头来看demos 看了一点 例子大多继承自SpreadsheetRibbonTutorialControlBase 这个类,它又继承自SpreadSheetTu ...

  4. C# WinfForm 控件之dev图表 ChartControl

    dev 图表控件 学习连接 新建一个winformApp form1上放一个button 再放一个chartControl Name 为cct 直接上代码 private void button1_C ...

  5. C# WinfForm 控件之dev报表 XtraReport (八)动态生成报表

    功能说明:生成一个报表文件DV1,保存到本地AA.rep,再重新加载这个文件到DV2 1.布局如下图: panel1 上有三个button panel2上有个documentView dv1 pane ...

  6. C# WinfForm 控件之dev报表 XtraReport (四) 动态绑定主从关系表

    一般的单据都是由主从关系的,比如部门与人员.单据表头与表身.仓库与存货.分类与档案等等 所以主从关系是报表用的最多的 1.准备数据库 简单方便 --主表 create table RdRecord ( ...

  7. C# WinfForm 控件之dev报表 XtraReport(三) 动态数据绑定

    代码还用上一节的,把reportFrx的dataSource去掉.各cell绑定的字段也去掉,有了第二节的基础,现在看这个ms就不难了 无非就是 传到reportFrx一个数据集 在把这个数据集 绑到 ...

  8. C# WinfForm 控件之dev报表 XtraReport (二) 固定数据绑定

    已经子解了XtraReport的初步用法 现在再进一步了解 数据绑定 我们还是先不整高深的 先来个写死的 让我们的数据库数据可以通过报表呈现先 1.准备 还在上节基础上 只不过我把form1 中的Do ...

  9. C# WinfForm 控件之dev报表 XtraReport (一) 初了解

    这个控件其实用法和fast也差不了太多但如果没接触过 真有种老虎吃天的感觉 1.这里先不说那些高深的先说最基本的 在窗体中显示一个设计好的 模版 1.1一般设计和这个程序是分着的为了方便我就先把他们合 ...

随机推荐

  1. VisualStudio下std::string的内存布局

    主要成员 union _Bxty { // storage for small buffer or pointer to larger one _Elem _Buf[_BUF_SIZE]; _Elem ...

  2. 运维 04 Shell基础命令(二)

    Shell基础命令(二)   查看Linux的发行版 cat /etc/redhat-release cat /etc/os-release 查看系统用户的id信息 id 用户名 id root id ...

  3. python学习笔记:数据类型——列表/数组(list)

    Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.通过下标访问列表中的元素(又称索引.角标),下标从0开始计数.list定义,使用中括号[]. l ...

  4. CF1163E

    CF1163E 首先存在p的要求是能建一个满的线性基而且线性基用到的数不能大于等于\(2^x\) 这很好解决,只要把所有数排序后从小到大的插进线性基,然后每次删掉所有原数大于\(2^x\)的数并调整x ...

  5. tomcat部署项目后,项目没有成功部署到tomcat里面,或者部署的是之前项目

    用svn下载java项目到本地,导入eclipse里面,然后部署到tomcat里,启动tomcat,一闪而过,在浏览器中打开,报404错(找不到页面),其实是项目没有成功部署到tomcat,可以打开t ...

  6. nginx匹配以XXX结尾的

    匹配以do结尾的所有文件:如http://192.168.126.168:8080/delivery/transportPlanData.do?startRelease=2019-07-06& ...

  7. 使用vue.js开发小程序

    写在前面 刚刚开源的mpvue引起了不少前端er们的注意,下图是一个简单的对比. 话不多说,我们现在感受一下如何使用mpvue开发小程序.(以下内容参照mpvue文档完成). 开发环境 node np ...

  8. linux常用命令-1系统相关命令

    hostname #计算机名 passwd #修改密码 reboot #重启 shutdown –r now #立刻重启(root用户使用) shutdown –r 10 #过10分钟自动重启(roo ...

  9. HDU 6326 Problem H Monster Hunter

    \(\mathtt{Problem H}\) \(\mathtt{Monster}\) \(\mathtt{Hunter}\) \(\mathcal{Description}\) 题目 给定一棵 \( ...

  10. ToDoList 增删改查

    ToDoList 主要功能 增加数据 删除数据 修改数据 查寻数据渲染页面 1 . HTML页面 <!DOCTYPE html> <html lang="en"& ...