ACCP5.0 第一学期.NET小总结

.net\C#(Web\Asp.net+winform) 专栏收录该内容
39 篇文章 0 订阅
 第一章(用Hello ACCP.NET热身(一))

1.打开解决方案资源管理器中的解决方案:

       在VS的菜单中选择“工具”→“选项”选项,打开“选项”对话框,在左边选择“项目和解决方案”,在右边选中“总是显示解决方案”复选框。

 

2.C#与Java不同的是:

1)C#不要求类名必须与源文件的名字一样。

2)组织代码的方式:C#使用命名空间(namespace),Java使用包(package),

3)引入命名空间或包的关键字:C#使用(using),Java使用(import)

4)程序入口:C#使用Main有4种形式(返回值还可以是int类型),Java使用main只有一种。

5)常用的数据类型:C#中布尔类型的关键字用bool,Java中的关键字用boolean

                            C#中的字符串数据类型是string ,Java中的关键字是String

      

 

3.C#中变量的命名方式与Java基本相同,只是“$”符号在C#中式不能使用的。

 

4.C#中的运算符也与Java中的运算符相同。

 

5.Console类

 

       在格式字符串中,可以使用\n(换行)和\t(制表)来控制输出。

 

向控制台输出  利用Console.WriteLine(); Console.Write();  前者输出后换行,后者输出后不换行。

 

       从控制台输入  利用Console.ReadLine();

 

              int.Parse()方法的作用是把字符串转换为整数。

              例:int age = int.Parse(Console.ReadLine());

 

6.C#中的条件判断

       与Java中的判断基本相同。但是switch的用法有所不同。

       Java语言允许case中没有break语句,如果当前执行的case中没有break语句,程序会继续执行下一个case,直到遇到break语句跳转或执行完switch语句,   并且switch中要判断的表达式的值或变量必须为整型或字符型。

 

       C#语言中要求每个case和default语句中都必须有break语句,除非两个case中间没有其他语句,那么前一个case可以不包含break,   switch中要判断的表达式的值或变量还可以是字符串类型

 

 


第二章(用Hello ACCP.NET热身(二))

 

1.  基本的循环语句

在Java中有while循环、do…while循环、for循环,C#中也有这三种循环结构,而且同Java中的语法和执行过程完全一样,不过C#中多了一种foreach循环

 

foreach循环语法

foreach(类型 元素(局部变量) in 集合或者数组)

{

       //代码块

}

 

2.  continue 和break语句的用法和Java中的用法都一样。

continue语句用在内层循环,跳转时是跳过内层循环中的剩余语句而执行内层循环中下一次循环。

break语句也是用在内层循环,它是跳出整个内层循环。

 

3.  C#中的数组

Java中数组声明是  数据类型[] 数组名;  或    数据类型 数组名[];

而C#中只能使用第一种方式,不能把方括号放在数组名的后面。

       语法:数据类型[] 数组名;   例:   int[] array;

       C#中数组的用法与Java中的一样。

 

4.  冒泡排序

for(int i = 0; i < N-1; i++)

{

       for(int j = 0; j < N-1-i;j++)

       {

              //比较j和j+1位置的元素

              //如果前大后小进行交换

       }

}

 

经验:

N个数字来排队,两两相比小靠前,

外层循环N-1,内层循环N-1-i。

如果要降序排序,只要把程序中的大于号换成小于号就行了。


 


第三章(用Hello ACCP.NET热身(三))

 

1.  C#中的命名空间

在程序的开头 使用using引入相应的命名空间。

 

2.  定义方法

语法:

访问修饰符 返回类型 方法名(参数列表)

{

       //方法的主体

}

方法名的命名  一般使用Pascal命名法。

 

3.  引用传递参数

使用ref 关键字修饰参数   在方法定义是和方法调用时都要使用ref修饰参数,而且使用ref修饰的参数必须在调用的方法中赋值。

 

4.  使用VS的重构功能 进行方法提取。

 

5.  C#中的String类

位于System命名空间中。


 

常用的字符串处理方法

方   法

说    明

bool Equals(string value)

比较一个字符串与另一个字符串value的值是否相等,相等返回true,不相等返回false,与“==”的作用一样

int Compare(sting strA,string strB)

比较两个字符串的大小关系,返回一个整数。如果strA小于strB,返回值小于0;如果strA等于strB,返回值为0;如果strA大于strB,返回值大于0

int IndexOf(string value)

获取指定的value字符串在当前字符串中第一个匹配项的索引,如果找到了value,就返回它的索引,如果没有找到,就返回-1

int LastIndexOf(string value)

获取指定字符串value在当前字符串中最后一个匹配项的索引,如果找到了value,就返回它的索引,如果没有找到,就返回-1。

string Join(string separator,string[] value)

把字符串数组value中的每个字符串用指定的分隔符separator连接,返回连接后的字符串

string[] Split(char separator)

用指定的分隔符separator分割字符串,返回分割后的字符串组成的数组

string SubString(int startIndex,int length)

从指定的位置startIndex开始检索长度为length的子字符串

string ToLower()

获得字符串的小写形式

string ToUpper()

获得字符串的大写形式

string Trim()

去掉字符串两端的空格

 

6.  Format方法

语法

string myString = string.Format(“格式字符串”,参数列表)

例:

string myString = string.Format(“{0}乘以{1}等于{2}”,2,3,2*3)

 

7.  C#中进行类型转换

a)         隐式类型转换

把取值范围小的类型转换为取值范围大的类型

如  int类型可以隐式转换为float 、double,float类型也可以隐式转换为double类型。

b)        显示类型转换

把取值范围大的类型转换为取值范围小的类型时,使用显示转换。

 

8.  数值类型与字符串之间的转换

int.Parse(string);   float.Parse(string);   double.Parse(string);

 

把double类型的值转换为int类型时会失去精度。不进行四舍五入。

 

9.  使用Convert类进行转换

常用Convert类的类型转换方法

 

      

方   法

说    明

Convert.ToInt32()

转换为整型(int型)

Convert.ToSingle()

转换为单精度浮点型(float型)

Convert.ToDouble()

转换为双精度浮点型(double型)

Convert.ToString()

转换为字符串类型(string型)

 

10.              小总结

a)         隐式类型转换:常用于数值型之间,将范围小的数值类型转换为范围大的数值类型。

b)        显式类型转换:常用于数值型之间,将范围大的数值类型转换为范围小的数值类型,使用小括号运算符。

c)         Parse()方法:将字符串转换为其他类型,用法为xxx.Parse(string)。

d)        Convert类:任何基本类型之间的相互转换。


 


第四章(第一个Windows程序)

 

1.  partial关键字

partial是“部分的”意思。

例如:Form1.cs和Form1.Designer.cs的代码具有相同的命名空间和相同的类名,并且都在类名前面增加了partial关键字,那么编译时,VS就会识别出来,并把它们合并成一个类来处理。    partial作用就是将一个类标识为分布类。

 

2.  窗体的重要属性

 

属   性

说   明

Name

窗体对象的名字,用以在代码中进行标识

BackColor

窗体的背景色

FormBorderStyle

窗体显示的边框样式,有7个可选的值,默认值是Sizable

MaximizeBox

确定窗体标题栏的右上角是否有最大化框,默认为True

ShowInTaskbar

确定窗体是否出现在Window任务栏中,默认为True

StartPosition

确定窗体第一次出现时的位置

Text

窗体标题栏中显示的文本

TopMost

指示窗体是否始终显示在此属性未设置为True的所有窗体之上,默认为False

WindowState

确定窗体的初始可视状态,包括Normal(普通)、Maximized(最大化)、Minimized(最小化)、默认值为Normal

 

3.  窗体的重要事件

事   件

说   明

Load

窗体的加载事件,窗体加载时发生

MouseClick

鼠标单击事件,当用户单击窗体时发生

MouseDoubleClick

鼠标双击事件,当用户双击窗体时发生

MouseMove

鼠标移动事件,当鼠标移动窗体时发生

KeyDown

键盘按下事件,在首次按下某个键时发生

KeyUp

键盘释放事件,在释放键时发生

 

sender是事件源,表示是谁引发了这个时间,

可以通过sender得到引发事件的控件,需要进行强制类型转换。

例:  string answer = ((RadioButton)sender).Text;


 

4.  有关控件的一些属性

组合框的主要属性

 

属   性

说   明

Items

组合框中的项

DropDownStyle

定义组合框的风格,指示是否显示列表框部分,是否允许用户编辑文本框部分

 

5.  实现窗体间的跳转

语法:

(1)    创建窗体对象:

被调用的窗体类  窗体对象名 = new 被调用的窗体类();

(2)    显示窗体

窗体对象名.show();

6.  显示消息框

a)         最简单的消息框

MessageBox.Show(要显示的字符串);

b)        带标题的消息框

MessageBox.Show(要显示的字符串,消息框的标题);

c)         带标题、按钮的消息框

MessageBox.Show(要显示的字符串,消息框的标题,消息框按钮);

d)        带标题、按钮、图标的消息框

MessageBox.Show(要显示的字符串,消息框的标题,消息框按钮,消息框图标);

 

7.  消息框的返回值

例:

DialogResult result = MessageBox.Show(要输入的字符串);

if(result == DialogResult.OK)


 


第5章(用控件进行快速开发)

 

1.  排列窗体上的控件

a)         对齐    选择“格式”→“对齐”

b)        使用anchor    要先选择一个或多个控件才可以设置   动态调整控件的大小

c)         使用dock   作用让控件始终保持在窗体的边缘,或者填充窗体

 

2.  MDI多文档应用程序

MDI主要由两种窗口组成:父窗口和子窗口。

 

1)  创建MDI步骤:

a.  设置父窗体:将父窗体的IsMDIContainer属性设置为True;

b.  设置子窗体:在调用打开子窗体的Show()方法前,在代码中将子窗体的MdiParent属性设为this。

 

值得注意的是:要把父窗体的属性IsMDIContainer属性设为True;

2)  为父窗体添加子窗体列表

a.  在父窗体中添加一个菜单

b.  添加一个“窗口”菜单项。

c.  将菜单控件的MdiWindowListItem属性设为“窗口”菜单项。

值得注意的是要选择整个菜单条。然后挨属性窗口中找到MdiWindowListItem属性,将它设为菜单条中所添加的子菜单项。

 

3.  使用工具条控件和状态条控件

工具条和状态条的主要属性

属   性

说   明

ImageScalingSize

工具条或状态条中的项显示的图像的大小

Items

在工具条或状态条上显示的项的集合

 

 

工具条和状态条上的按钮和标签的主要属性

 

属   性

说   明

DisplayStyle

设置图像和文本的显示方式,包括显示文本、显示图像、显示文本和图像或什么都不显示

Image

按钮/标签上显示的图片

Text

按钮/标签上显示的文本

 

经验:

假如在工具条中添加了一个按钮,但是后来因为需要想把它变为下拉按钮或别的形式,选中这个工具条项,单击鼠标右键,选择“转换为”选项,就会出现可以转换的其他形式。

 

4.  选项卡控件

选项卡的主要属性

 

属   性

说   明

MulitiLine

是否可以显示多行选项卡

TabPages

包含的选项卡页的集合

SelectedIndex

当前所选选项卡页的索引值

 

5.  使用图片框、图像列表、计时器控件

 

图片框(pictureBox)的主要属性

 

属   性

说   明

Image

图片框显示的图像

SizeMode

指定如何处理图片的位置和控件的大小

 

 

图像列表(ImageList)的主要属性

 

属   性

说   明

Images

存储在图像列表中的所有图像

ImageSize

图像列表中图像的大小

TransparentColor

被视为透明的颜色

 

 

计时器(Timer)主要属性和事件

 

属   性

说   明

Interval

事件发生的频率,以毫秒为单位

Enabled

是否定时引发事件

事   件

说   明

Tick

每当指定间隔发生的事件

方   法

说   明

Start()

启动计时器

Stop()

停止计时器

 


 


第6章  用ADO.NET链接数据库

1..NET Framework数据提供程序

.NET Framework数据提供程序

.NET Framework数据提供程序

说   明

SQL Server .NET Framework数据提供程序

提供对Microsoft SQL Server 7.0版或更高版本的数据访问

使用System.Data.SqlClient命名空间

OLE DB .NET Framework数据提供程序

适合于使用OLE DB公开的数据源

使用System.Data.OleDb命名空间

ODBC .NET Framework数据提供程序

适合于使用ODBC公开的数据源

使用System.Data.Odbc命名空间

Oracle .NET Framework数据提供程序

适合于Oracle数据源。Oracle .NET Framework数据提供程序支持Oracle客户软件8.1.7版和更高版本

使用System.Data.OracleClient命名空间

 

 

.NET Framework数据提供程序的4个核心对象

对   象

说   明

Connection

建立与特定数据源的链接

Command

对数据源执行命令

DataReader

从数据源中读取只进且只读的数据流

DataAdapter

用数据源填充DataSet并解析更新

 

 

2.使用Connection对象

.NET数据提供程序及相应的连接类

 

.NET数据提供程序

连   接  类

SQL 数据提供程序

System.Data.SqlClient

SqlConnection

OLE DB数据提供程序

System.Data.OleDb命名空间

OleDbConnection

ODBC数据提供程序

System.Data.Odbc命名空间

OdbcConnection

Oracle数据提供程序

System.Data.OracleClient命名空间

OracleConnection

 

 

 

Connection对象的主要属性和方法

 

属   性

说   明

ConnectionString

用于连接数据库的连接字符串

方   法

说   明

Open

使用ConnectionString属性所指定的设置打开数据库连接

Close

关闭与数据库的连接

 

3.连接数据库主要分为3步:

1)  定义连接字符串

不同德数据库连接字符串格式不同,Sql Server数据库的连接字符串格式一般为:

Data Source = 服务器名(.);Initial Catalog=数据库名;User ID=用户名 pwd = ;

密码如果未空,可以省略了pwd 一项

2)  创建Connection对象

SqlConnection connection = new SqlConnection(connString);

3)  打开与数据库的链接

connection.Open();

 

4.  使用Command对象

.NET数据提供程序及相应的命令类

.NET数据提供程序

连   接  类

SQL数据提供程序

System.Data.SqlClient命名空间

SqlCommand

OLE DB数据提供程序

System.Data.OleDb命名空间

OleDbCommand

ODBC数据提供程序

System.Data.Odbc命名空间

OdbcCommand

Oracle数据提供程序

System.Data.OracleClient命名空间

OracleCommand

 

 


 

.NET数据提供程序及相应的命令类

 

属   性

说   明

Connection

Command对象使用的数据库连接

CommandText

执行的SQL语句

方   法

说   明

ExecuteNonQuery

执行不返回行的语句,如Update等

ExcuteReader

执行查询命令,返回DataReader对象

ExcuteScaler

返回单个值,如执行Count(*)

 


 


第7章  用ADO.NET查询和操作数据库

1.DataReader对象

 

.NET 数据提供程序及其DataReader类

.NET数据提供程序

DataReader类

SQL数据提供程序

System.Data.SqlClient命名空间

SqlDataReader

OLE DB数据提供程序

System.Data.OleDb命名空间

OleDbDataReader

ODBC数据提供程序

System.Data.Odbc命名空间

OdbcDataReader

Oracle数据提供程序

System.Data.OracleClient命名空间

OracleDataReader

 

 

DataReader对象的主要属性和方法

属   性

说   明

HasRows

是否返回了结果,如果有查询结果返回True,否则返回False

FieldCount

当前行中的列数

方   法

说   明

Read

前进到下一行记录,如果读到记录返回True,否则返回False

Close

关闭DataReader对象

 

2.使用DataReader对象

       使用步骤:

       1)创建Command 对象

       2)调用Command对象的ExecuteReader()方法创建DataReader对象

              SqlDataReader  dataReader = command.ExecuteReader();

       3)使用DataReader的Read()方法逐行读取数据

              dataReader.Read();    返回值是一个布尔类型的

       4)读取当前行的某列的数据

              (string)dataReader[“StudentName”];

       5)关闭DataReade对象,调用它的Close()方法。

 

3.操作数据

使用Command对象的ExecuteNonQuery()方法,用于执行指定的SQL语句,如Update、Insert、Delete

       执行步骤如下:

       (1)创建Connection对象。

       (2)定义要执行的SQL语句

       (3)创建Command对象

       (4)创建ExecuteNonQuery()方法。

       (5)根据返回的结果进行后续的处理。

 

4.ListView控件

 

ListView控件的主要属性

属   性

说   明

Columns

“详细信息”视图中显示的列

FullRowSelect

当选中一项时,它的子项是否同该项一起突出显示

Items

ListView中所有项的集合

MultiSelect

是否允许选择多项

SelectItems

选中的项的结合

View

指定显示5种视图中的哪一种视图

事   件

说   明

MouseDoubleClick

鼠标双击事件

方   法

说   明

Read

前进到下一行记录,如果读到记录返回True,否则返回False

Close

关闭DataReader对象

 

5.  ContextMenuStrip控件

该控件是一个快捷菜单也可以叫做上下文(Context)菜单。也称右键菜单。

 

注意:用右键菜单控件必须把所用的控件的ContextMenuStrip属性设置为所添加的ContextMenuStrip控件。

 

菜单项(MenuItem)的主要属性和事件

属   性

说   明

DisplayStyle

指定是否显示图像和文本

Image

显示在菜单项上的图像

Text

显示在菜单项上的文本

事   件

说   明

Click

单击事件,单击菜单时发生

 

6.  操作数据库小结

1)  查询单个值时 调用Command对象的ExecuteScalar()方法;

                    

2)  查询若干条记录  调用Command对象的ExecuteReader()方法,返回一个DataReader对象。

 

DataReader对数据库进行操作非常快。

 

 

 


第8章  用DataGridView显示和操作数据库

 

1.    创建DataSet对象

       语法:

       DataSet 数据集对象 = new DataSet(“数据集的名称字符串”)

       方法中的参数  数据集的名称字符串 可以有,也可以没有,如果没有写参数,创建的数据集的名称就默认为NewDataSet。

 

2.    DataAdapter对象

       数据适配器(DataAdapter)属于.NET数据提供程序,所以不同类型的数据库需要使用不同的数据适配器。

 

.NET数据提供程序及其DataAdapter类

 

.NET数据提供程序

数据适配器类

SQL数据提供程序

System.Data.SqlClient命名空间

SqlDataAdapter

OLE DB数据提供程序

System.Data.OleDb命名空间

OleDbDataAdapter

ODBC数据提供程序

System.Data.Odbc命名空间

OdbcDataAdapter

Oracle数据提供程序

System.Data.OracleClient命名空间

OracleDataAdapter

 

 

DataAdapter对象的主要属性和方法

 

属   性

说   明

SelectCommand

从数据库检索数据的Command对象

方   法

说   明

Fill

向DataSet中的表填充数据

Update

将DataSet中的数据提交到数据库

 

3.    使用DataAdapter填充数据集

       需要4个步骤

       (1)创建数据库连接对象(Connection对象)

       (2)创建从数据库查询数据用的SQL语句   

       (3)利用上面创建的SQL语句和Connection对象创建DataAdapter对象。

                     语法:

              SqlDataAdapter 对象名 = new SqlDataAdapter(查询用的SQL语句,数据库连接)

       (4)调用DataAdapter对象的Fill()方法填充数据集。

                     语法:
              DataAdapter对象.Fill(数据集对象,“数据表名称字符串”)

 

       重新为DataAdapter对象指定查询用的SQL语句使用SelectCommand.CommandText属性;

 

      

4.    保存数据集中的数据

       把数据集中修改过的数据保存到数据库,需要两个步骤:

       (1)使用SqlCommandBuilder对象生成更新用的相关命令。。

       语法:
              SqlCommandBuilder builder = new SqlCommandBuilder(已创建的DataAdapter对象)

       (2)调用DataAdapter对象的Update()方法。

       语法:
              DataAdapter对象.Update(数据集对象,“数据表名称字符串”);

      

       经验:SqlCommandBuilder只操作单个表,也就是说,创建DataAdapter对象是,使用的SQL语句只能从一个表里面查数据,不能进行联合查询。

             

5.    DataGridView控件

      

              DataGridView控件的主要属性

 

属   性

说   明

Columns

包含的列的集合

DataSource

DataGridView的数据源

ReadOnly

是否可以编辑单元格

 

通过Columns属性,可以设置DataGridView中每一列的属性,包括列的宽度、列头的文字、是否为只读、是否冻结、对应数据表中的哪一列等。各列的主要属性如下表。

 

各列的主要属性

 

属   性

说   明

DataPropertyName

绑定的数据列的名称

HeaderText

列标题文本

Visible

指定列是否可见

Frozen

指定水平滚动DataGridView时列是否移动

ReadOnly

指定单元格是否为只读

 

6.    使用DataGridView显示数据

       例:

              dgvTeacher.DataSource = dataSet.Table[“Teacher”];

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值