码迷,mamicode.com
首页 > Windows程序 > 详细

C#实例应用总结(一)

时间:2017-12-23 14:09:53      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:idv   index   rem   session   desc   post   isnull   esc   png   

C#实例应用总结(一)

本人没有系统学习过,C#,只是在工作中积累了一些,为了方便以后开发中使用,在此做一下总结,如有不对的地方,欢迎各位观众多多批评与指正!

您的意见,才能使大家更好的进步!望不吝指教!

概念就不说了,有兴趣的话,可以留言,以后再加上!

工具用的是VS2013,后台用的java

一、gridView的增删改查,

1、查询

根据sql查询,

ServiceFactory.CreateService<IDeptParameterService>().queryWaitParameter(param).Then(list =>
{
this.gridControl1.DataSource = list;
});

 ServiceResult<List<WaitParVo>> queryWaitParameter(string pkDept);

IDeptParameterService是我的service类,里面只写方法,页面的上方法体里,用“.”的方式,可以调用出自己写的方法,

list 用list变量来接收

this.gridControl1.DataSource = list;赋值给你要显示的gridControl的列表上的数据源,列表上写好对应的名称即可!

 ServiceResult<List<WaitParVo>> queryWaitParameter(string pkDept);是service层的方法,

WaitParVo为该列表对应的实体类,

string pkDept为参数,

queryWaitParameter方法名。

2、新增

gridView经常会用到新增的时候,在这里,提供两种方法,(当然也希望各位观众有更好的方法,多多指教。)

这两种也是视条件来决定,有一种,只插入数据库的方式,然后,刷新页面,即新增一行。下面会细讲!

主要讲第二种,

gridView1.AddEmptyRow<WaitParVo>(row => string.IsNullOrEmpty(row.Code), new WaitParVo
{
Code = ar.CodeArgu,
Name = ar.NameArgu,
PkOrg = AppContext.Session.OrganizationId,
});

AddEmptyRow为新增一行的方法,

WaitParVo,该gridView对应的实体类

row 变量名,

string.IsNullOrEmpty(row.Code)是否为空判断

{}里面为需要给列表赋的值。

可根据实际情况改变。

其中ar是什么?

这段代码是我从自己的项目上粘出来的,讲一下,为什么这么写

我当时的需求是这样的技术分享图片

技术分享图片

点击右箭头,变成这样

技术分享图片

 

 点击》按钮,左侧列表全部移动到右侧,《和<同理

左侧列表为gridControl1,右侧为GridControl2

 

var ar = this.gridView2.GetFocusedRow() as ArguVo;
if(ar == null){
MessageBoxUtils.Hint("没有已选参数了");
return;
}
gridView1.AddEmptyRow<WaitParVo>(row => string.IsNullOrEmpty(row.Code), new WaitParVo
{
Code = ar.CodeArgu,
Name = ar.NameArgu,
PkOrg = AppContext.Session.OrganizationId,
});
int rowindex = gridView2.FocusedRowHandle;
gridView2.DeleteRow(rowindex);

 左右同理,先获取到列表的光标选中行this.gridView2.GetFocusedRow() as ArguVo;

用变量来接收,增加之后,把获取到的值,赋值给另一个列表的对应字段。

int rowindex = gridView2.FocusedRowHandle;获取选中行的下标,根据选中行的下标删除。完成移动的操作!

在写》的方法

 

private List<WaitParVo> WList;
private List<ArguVo> AList;


List<ArguVo> s = this.AList;
List<WaitParVo> d = this.WList;
if (d == null || d.Count < 1)
{
MessageBoxUtils.Hint("待选参数已全选");
return;
}
foreach (var g in d)
{
gridView2.AddEmptyRow<ArguVo>(row => string.IsNullOrEmpty(row.CodeArgu), new ArguVo
{

CodeArgu = g.Code,
NameArgu = g.Name,
PkOrg = AppContext.Session.OrganizationId,
PkArgu = g.PkParamtemp,
Arguval = g.ValDef,
NoteArgu = g.DescParam

});
}
this.gridControl1.DataSource = null;
this.WList = null;
return;

 先根据列表对应的实体类,创建list集合,

用foreach遍历新增,将集合里所有的值,全部新增,根据集合里的值,对应赋值给,两一个列表的相应名称。

this.gridControl1.DataSource = null;将之前的列表为空。

 

C#实例应用总结(一)

标签:idv   index   rem   session   desc   post   isnull   esc   png   

原文地址:http://www.cnblogs.com/yanran444/p/8093110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!