C#实例应用总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#实例应用总结相关的知识,希望对你有一定的参考价值。

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#实例应用总结的主要内容,如果未能解决你的问题,请参考以下文章

关于C#委托应用与总结

C#字符串的截取函数用法总结

c#:未将对象引用设置到对象的实例--可能出现的问题总结(转)

软件工程课程总结

解析Exception和C#处理Exception的常用方法总结

C#下MSchart的应用总结