C#语言开发数据库应用系统总结.docx
《C#语言开发数据库应用系统总结.docx》由会员分享,可在线阅读,更多相关《C#语言开发数据库应用系统总结.docx(15页珍藏版)》请在冰豆网上搜索。
C#语言开发数据库应用系统总结
目录
C#窗体开发3
一.窗体的传值:
3
二.获取项和子项:
3
三.窗体对齐和MDI:
4
四.取自动增长列的最大Id:
5
五.获取或设置对数据源执行的SQL语句、表名、或存储过程:
5
六.ListBox和ComboBox的控件的相同点和不同点,常量与枚举:
5
七.Application.Exit()和Form.Close()的区别:
5
八.动态加载,视图列表控件ListView数据:
5
九.枚举:
7
十:
当单机窗体的最小化,在右下角显示,当单机最大化后又复原:
7
十一:
详细信息显示:
用到了二维数组8
十二:
背景颜色控件:
colorDialog8
十二.数据绑定(DateSource数据源):
9
十三、.NET数据库访问操作:
9
十四、在C#中获取当期系统时间和所选时间的拆分:
11
十五、各种列表控件的数据绑定加载方式及取值:
11
取值13
C#窗体开发
一.窗体的传值:
1.属性传值:
只要值经过的窗体都需要传递。
2.方法传值:
先在目标对象申明源对象类类型的字段,然后在源对象类中实例化目标对象,再进行把源对象都赋给目标对象实例.字段=this。
同时在源对象类中编写要传值的方法。
最后就可以在目标对象类中调用,字段.方法(赋值)
3.构造函数传值:
在源对象类中实例化时(用目标作为参数初始化),然后在目标类中建立构造方法(一定要先初始化容器),用一个参数(其实此参数就是在实例化的时候传过来的),把参数赋给目标类的字段即可。
二.获取项和子项:
1.ComboBox:
取值:
ComboBox1.Items[0].toString();
赋值:
ComboBox1.Items.Add(xx);把值添加到对象里
取得组合框用户选定的项:
ComboBox1.SelectedIndex=0;
取得组合框用户选定的项的值:
ComboBox1.SelectedValue;
2.ListView
取值:
LVResult.SelectItems[0].Text;
3.dataGridView
取值:
单元格里的值:
this.dataGridView1.SelectedRows[0].Cells["EmpId"].Value
填充:
//必À?
须?
将?
SelectionMode属º?
性?
设¦¨¨置?
为aFullRowSelect或¨°RowHeaderSelect,ê?
才?
能¨¹用®?
选?
定¡§的Ì?
行D填¬?
充?
SelectedRows属º?
性?
。
¡ê
DataGridViewSelectedRowCollectionrows=this.dgvFlightInfo.SelectedRows;
//string[]str=newstring[5];
foreach(DataGridViewRowrowinrows)
{
flightNo=row.Cells["FlightNo"].Value.ToString();
this.txtFlightNo.Text=flightNo;
this.txtFlightCompany.Text=row.Cells["Airways"].Value.ToString();
this.txtSetOutTime.Text=row.Cells["LeaveTime"].Value.ToString();
this.txtArriveTime.Text=row.Cells["LandTime"].Value.ToString();
this.txtAdultFare.Text=row.Cells["Price"].Value.ToString();
}
Eg:
(列表视图的添加):
//创ä¡ä建¡§ListViewItem
ListViewItemitem=newListViewItem(studentNo);//构1造¨¬初?
始º?
化¡¥即¡ä赋3第̨²一°?
个?
值¦Ì
//添¬¨ª加¨®子Á¨®项?
item.SubItems.Add(studentName);
item.SubItems.Add(gender);
item.SubItems.Add(gradeName);
//将?
ListViewItem添¬¨ª加¨®到Ì?
ListView中D
lvStudentInfo.Items.Add(item);
(数据网格视图的添加):
,,,,,,,,,,,,,,,,,,,,,,,,,,
adapterStudentInfo.Fill(ds,"Student");
this.dgvStudent.DataSource=ds.Tables["Student"];
(数据视图):
主要用于筛选
//创ä¡ä建¡§DataView对?
象¨®
DataViewdv=newDataView(ds.Tables["Student"]);
dv.RowFilter=rowFilter;//设¦¨¨置?
筛¦?
选?
条¬?
件trowFilter为节点的条件,不一定string类型
dv.Sort="StudentNamedesc";//指?
定¡§排?
序¨°条¬?
件t
dgvStudent.DataSource=dv;//绑㨮定¡§数ºy据Y源¡ä
三.窗体对齐和MDI:
父窗体设置:
IsMDIContainer设置true
子窗体设置:
在调用打开子窗体之前,加MdiParent=this;
//子Á¨®窗ä¡ã体¬?
上¦?
下?
对?
齐?
privatevoidtsmiUpDown_Click(objectsender,EventArgse)
{
this.LayoutMdi(MdiLayout.TileHorizontal);
}
//子Á¨®窗ä¡ã体¬?
左Á¨®右®¨°对?
齐?
privatevoidtsmiAbout_Click(objectsender,EventArgse)
{
this.LayoutMdi(MdiLayout.TileVertical);
}
四.取自动增长列的最大Id:
Select@@IDDENTITYfrom[xx];
五.获取或设置对数据源执行的SQL语句、表名、或存储过程:
Commd..CommandText=xx;xx代表sql语句
六.ListBox和ComboBox的控件的相同点和不同点,常量与枚举:
七.Application.Exit()和Form.Close()的区别:
应用程序类Application的静态方法,用于退出当前应用程序;如果当前应用程序打开了多个窗体,则关闭所有窗体;关闭窗体时,不会触发窗体的FormClosing和FormClosed事件;
窗体类Form的实例方法,用于关闭当前窗口;如果当前窗体是系统启动窗体,则执行该方法关闭窗体后,应用程序退出;如果当前应用程序打开多个窗体,只关闭当前窗体;关闭窗体时,会触发窗体的FormClosing和FormClosed事件。
八.动态加载,视图列表控件ListView数据:
Eg:
首先:
清空Listview中的数据:
If(Lv.Items.Count>0){
LV.Items.Clear();
}
//动¡¥态¬?
加¨®载?
列¢D头ª¡¤必À?
须?
把ã?
它¨¹清?
除y,ê?
否¤?
则¨°会¨¢每?
次ä?
都?
加¨®载?
,ê?
再¨´循-环¡¤中D
在读取,加载:
(在读取时要判断是否读取到记录:
!
reader.HasRows)
方式一:
(加载列头)
this.lvAnimal.Columns.Clear();
//实例化列头对象
ColumnHeaderch=newColumnHeader();
//ch.Name="名?
称?
";
ch.Text="名?
称?
";
ch.ImageIndex=0;//图ª?
片?
的Ì?
索¡Â引°y
ch.Width=100;
//把列头项加到师徒列表的列中
this.lvAnimal.Columns.Add(ch);阶级式的
ch=newColumnHeader();
ch.Name="类¤¨¤型¨ª";
ch.TextAlign=HorizontalAlignment.Center;//中D间?
对?
齐?
this.lvAnimal.Columns.Add(ch);
(加载ListView项)
//创建ListView的项
ListViewItemitemD=newListViewItem(“D盘”,1);
//向项中添加子项
itemD.SubItems.Add(“本地磁盘”);
itemD.SubItems.Add(“23.3GB”);
itemD.SubItems.Add(“9.3GB”);
//将项添加到ListView中
LvMyComputer.Items.Add(itemD);
方式二:
(加载ListView项)
//创建ListView的项
ListViewItemitemE=newListViewItem();
itemE..Text=”“E盘”;
itemE.ImageIndex=2;
//向项中添加子项
itemE.SubItems.AddRange(newstring[]{“本地磁盘”,”40.3GB”,”1.6GB”});
//将项添加到ListView中
LvMyComputer.Items.Add(itemE);
九.枚举:
注:
必须放在类的外面,因为枚举也是类。
Eg:
publicenumGenders
{
Male=1,Female=0
}
PrivateGendersstudentGender;
PublicGendersStudentGender
{
get{returnstudentGender;}
set{studentGender=value;}
}
____________其中默认是从0开始,只能是int,short……类型的值。
可以从一个字符串中获取枚举的值:
(字符串必须是定义枚举中的值)
_________student.StudentGender=(Gender)(Enum.Parse(typeof(Gender),”Male”));
-----cw—(xx.toString())Male
十:
当单机窗体的最小化,在右下角显示,当单机最大化后又复原:
//窗ä¡ã体¬?
大䨮小?
改?
变À?
时º¡À间?
最Á?
小?
化¡¥在¨²右®¨°下?
角?
显?
示º?
privatevoidForm2_SizeChanged(objectsender,EventArgse)
{
if(this.WindowState==FormWindowState.Minimized)
{
this.Hide();
this.notifyIcon1.Visible=true;
}
}
//窗ä¡ã体¬?
控?
件t单Ì£¤击¡Â事º?
件t
privatevoidnotifyIcon1_Click(objectsender,EventArgse)
{
this.Visible