基本用法

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. 前端学习笔记——CSS选择器

    学习css选择器之前我们先了解下css规则: CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明: 选择器通常是需要改变样式的 HTML 元素. 每条声明由一个属性和一个值组成. 1.id选 ...

  2. docker 安装 lnmp

    docker 安装 lnmp 标签(空格分隔): php,docker 安装MySql 1 搜索镜像 docker search mysql 2 安装镜像 docker pull mysql:5.7 ...

  3. Spring快速开启计划任务

    Spring3.1开始让计划任务变得非常简单,只需要几个注解就能快速开启计划任务的支持. @EnableScheduling @Target(ElementType.TYPE) @Retention( ...

  4. __user表示是一个user mode的pointer,所以kernel不可能直接使用。

    __user表示是一个用户空间的指针,所以kernel不可能直接使用. #ifdef __CHECKER__# define __user __attribute__((noderef, addres ...

  5. dubbo接口未更新,清maven缓存问题

    有时候idea maven reimport 并未更新到最新的版本 此时可以到./m2去进行手动清楚缓存再更新 cd .m2/repository/cn/dface/biz/couponcenter ...

  6. App加载主要流程

    主要流程 Application OnCreate 加载第三方的sdk 加载自身的逻辑 发送远程数据请求 xxx.json 渲染界面 List

  7. Codeforces 1149D 最短路 状压DP

    题意及思路:https://blog.csdn.net/yzyyylx/article/details/90145400 这题主要巧妙在分析了最短路算法的性质,得出大小小于等于3的连通块一定不会被再次 ...

  8. Dubbox服务的提供方配置

    在src/main/resources下创建applicationContext-service.xml ,内容如下: <?xml version="1.0" encodin ...

  9. 微信小程序 滚动到底部

    1.html <view id="bottom"></view> 2. onReady: function () { //滚动到底部 let query = ...

  10. vue 插槽 slot

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...