vs老轰教材的学习笔记.docx
- 文档编号:7980661
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:12
- 大小:25.46KB
vs老轰教材的学习笔记.docx
《vs老轰教材的学习笔记.docx》由会员分享,可在线阅读,更多相关《vs老轰教材的学习笔记.docx(12页珍藏版)》请在冰豆网上搜索。
vs老轰教材的学习笔记
vs2005老轰教材的学习笔记
2008年03月08日星期六下午05:
19
第一节准备工作(本节为文字部分)
·准备工作
第二节vs2005的环境(以下章节为视频)
·起始页与创建WEB站点和创建新页面·对工具栏作说明
·制作第一个页面及启动运行·小结考试
第三节讲解C#基本语法
·变量的概念\声明\特性\常见错误
申明引用变量
stringthc:
thc="hello,word!
";
Response.Write(thc);
1、反复说了:
变量区分大小
2、不能直接引用没有值或者没有定义的变量
3、可以同时声明几个变量,中间用,隔开
多个变量的引用:
Response.Write(++aa++,++bb++)
上面的aa,bb都是变量名字
·数据类型
数据类型:
数值类型(堆、堆栈)和引用型(变量地址)
1、值类型存值,而引用型是储存对值的引用
2、堆:
没有固定长度;堆栈:
有固定长度
3、数据类型分为:
数值、字符串、字符、数组、布尔、类、结构、接口、枚举、对象
数值---(int)整型,(double)双精度:
可以计算
字符串(string):
常用的,它是引用的堆。
他的运算是前后方在一起。
字符(char):
只允许一个字符
布尔(bloon):
只允许真假的传递传递
·数据类型(日期类型)
DateTimedt;//申明方式注意这里是date不是data
dt=DateTime.Now;//赋值
DateTimedat=Convert.ToDateTime("9/6/2003");//申明一个固定的时间转换(mm/dd/yy)
Response.Write(dt.Year.GetType()+"
");//察看他的类型
Response.Write(+dt.Year);
Response.Write("
"+dt.Month);//尝试用一下换行
Response.Write(+dt.Day);
Response.Write(dt);//这里不能有+号,这里是直接写出来
Response.Write(dt.ToShortTimeString)//这里也不用+,类似toshort..的很多
Label1.Text=+dt.ToLongDateString();//这里是在表格里面使用的方法
·运算符(赋值,算术)
运算符分为:
赋值,算术、比较、逻辑、连接
=赋值
==等于符号
a-=b
a*=b
a/=b
a?
?
b//如果a非空,返回a,否则返回b
a%b
Label1.Text=Conver.ToString(a*=b);//转换的格式
int?
cc=null//判断值
·数据类型转换
数据的类型进行转换,一般就是双精度、整型、浮点型、小数型的转换
用法举例:
inta=23;
byteb=Convert.Tbyte(a);
byted=43;
intf=d;
Doubler=321.431
intu=Convert.ToInt32(r)
decimalq=4364323424324.35432534253M;
doublex=Convert.ToDouble(q);
uintui=100;
inti=(int)ui;
Label1.text=?
.ToString();//这个控件只接受字符串的转换
·结构化数据类型(数组)---中很少用
数组:
相同类型数字的集合在一起.
void中的代码哦
一维:
string[]arr;//字符串类型的数组的申明引用
arr=newstring[5];//初始化,这里的访问是从0-4
string[]abc=newstring[3];
string[]thc={"aa","bb","cc"}//因为是字符串值,所以用"",""格式
Label1.Text=thc[0].ToString();
thc[0]="zilongx"+thc[0];
thc[1]="zilongx"+thc[1];
thc[2]="zilongx"+thc[2];//给数组加前缀或者赋值,这个方法没有下面的好
for(inti=0;i { string[i]="zilongx"+thc[i]; Response.Write(" } 二维: string[,]abcd=newstring[2,4];//建立一个2*4的数组 abcd[0,0]="肖子龙"; abcd[0,1]="男"; abcd[0,2]="学生"; abcd[0,3]="19岁"; abcd[1,0]="大海"; abcd[1,1]="男"; abcd[1,2]="杀人犯"; abcd[1,3]="23岁"; //这个其实就类似于表格哦! ! ! 以前还理解得那么复杂~~~ for(int=0,i {//循环数的维数 for(int=j=0;j<=abcd.GerUpperBound(abcd.Rank-1);j++) {//利用这个循环把刚才的二维数字读取出来 Response.Write(" } } ·结构化数据类型二(枚举,结构) struct类型是一种值类型 void上面的代码: publicstrctBook {//申明一个名字是book的结构,这个类型基本可以存放所有的数据 publicintprice;//public,在这个页面上其他的代码都可以访问 publicstringtile; publicstringauthor publicinok; } 枚举: enumem {//申明一个枚举类型 abc=0,//这里用,分开 bcd=1, cde=2, } void里面的代码: bookbk; bookbok=newBook(); //申明的方式就是这两种 bok.titel="woshibiaoti"; bok.price=32; bok.author="hogntianchuanxilei" //对他赋值 Label1.Text="我的标题是"+bok.title; ... ... //具体使用 ·控制结构一(分支) if...else... try...catch... switch...case...default... switch...case...default...每次循环中要有break(跳出循环) intabc=8; switch(abc) { case1; Label2.Text="等于1";; break; case2; Label2.Text="等于2"; break; case5; Label2.Text="等于5"; break; difault; Label2.Text="哈哈! 都不是! "; break; } ·控制结构二(循环) for do...while... foreach...in for用得比较多,不多说了,看了这么多遍,如果还不懂,就去买书! 日! do...while...哦,这个在以前的asp里面用的多,现在的你就把他忘记吧 foreach...in: 为数组或者对象集合中的每个元素重复进行一个嵌入语句组. 例句: string[]thc=newstring[]{"1abcd","2abde","3areff","4fcdsw","5cccasa","6egfds"}; foreach(stringrinthc) {//迭代 if(r.Contains("a"))//包含a的都显示出来 { Response.Write(r.Tostring()+" } } foreach...in,经过理解以后,这个启示就是一个类似筛选的语句! ·控制结构三(函数) 跳伞带着钱买鸡的 带着参数去找另外一个代码段(一般的代码段都是大包好的,就像超市的东西都是制作包装好的,不用你自己去做,你自己去做你还买他干什么)//对比着看更好理解 函数是一种方法. 在void中申明函数 publicstringthc(stringa,intc) { ...... returncc }//申明函数,并且返回值 第四节对象入门 ·对象概述 抽象对象和物理对象 对象中有属性和方法(对象完成的动作) 控件其实也是对象哦~~~呵呵,和我想得一样 ·创建对象和使用方法以及属性 类或者对象中的元素我们统称他为: 成员. 命名规则: 成员的命名规则: carColor 属性的命名规则: Carcolor 存取器: get、set被存储器 在void上面写哦 publicclsscar { ... } ### ·利用构造函数初始化对象 ### ·重载方法以及运算符重载 ### ·.Net核心对象(Response) Request: 输入信息 ·.Net核心对象(Request,Server) Response: Response.Clear() Response.ClearHeaders()//删除头信息 Response.ClearContent()//删除全部信息 Response.ClearContent()//全部删除 Response.Expire=5//五分钟后删除全部缓冲数据 ....可以去查找一下,MSDN ·状态处理(Session,Cookie) 建立一个global.asa 这里是用于cookie的操作. 第五节事件驱动编程与回送 ·Asp.Net中的事件(页面事件) Asp.Net可以使用事件驱动的编程模式,这个是送回服务器处理的,而不是在本机上面. protectedvoidPage_Load(objectsender,EventArgse) //页面每次加载按照新的页面给他处理,并且运行以下代码,这个也是一个事件驱动 ·Asp.Net中的事件(控件事件) 拖放控件以后可以在属性中修改,也可以在属性中双击以后进入后台修改 每个控件都有他的事件 第六节类 ·类关系 属性: 储存对象的信息,可以定义他的只读或者只写等等 方法: 可以触发的时候做相关的事件 事件: 方法触发以后具体做什么事件,怎么做... Publicstaticstringaaa;---静态成员变量 publicstaticvoidaaa()---静态成员函数 publicstringaaa;---实体成员变量 publicvoidaaa()---实体成员函数 静态的static: (可以不申明对象直接用),而实体的必须申明对象 实例化的类型我们称为对象 void public: private: 限制此类内部使用 protected: 除了本身可以使用,任何继承此类的都可以使用 internal: 很少用 ...要继续深入可以在网络上搜索一下 ·类的自定义事件 页面事件和空间事件. 事件Event事件发生者EventSender(携带信息)事件委托者EventDelegate 事件接受者EventReciiver 一个叶面中可以放置多个类 ·类--共享成员 共享关系: 在类中,而不是在特殊对象上,整体对象的成员叫共享关系 包含关系: 在一个对象中作数据成员的对象类型 继承关系: 基于一个类的另一个类 ·类-索引指示器 可以象用数组一样对对象是用下标,简单的说它可以通过索引指示器方式访问类的一组数据. 相关内容查询msdn ·类--包含、镶套类型 镶套类型: 一个类被另外一个类包含 包含: 在另外一个对象中做数据成员的对象类型 静态方法一定要引用到最小范围,动态就不用.静态方法需要定义,动态不需要 ·类--继承&&&&&&&&&难&&&&&&&&&&& 去网站上搜索一下.继承不能滥用. 1、继承是可传递的。 如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员。 Object类作为所有类的基类。 2、派生类应当是对基类的扩展。 派生类可以添加新的成员,但不能除去已经继承的成员的定义。 3、构造函数和析构函数不能被继承。 除此以外的其它成员,不论对它们定义了怎样的访问方式,都能被继承。 基类中成员的访问方式只能决定派生类能否访问它们。 4、派生类如果定义了与继承而来的成员同名的新成员,就可以覆盖已继承的成员。 但这并不因为这派生类删除了这些成员,只是不能再访问这些成员。 5、类可以定义虚方法、虚属性以及虚索引指示器,它的派生类能够重载这些成员,从而实现类可以展示出多态性。 6、派生类只能从一个类中继承,可以通过接吕实现多重继承。 下面的代码是一个子类继承父类的例子: usingSystem; publicclassParentClass { publicParentClass() {Console.WriteLine("父类构造函数。 ");} publicvoidprint() {Console.WriteLine("I'maParentClass。 ");} } publicclassChildClass: ParentClass { publicChildClass() {Console.WriteLine("子类构造函数。 ");} publicstaticvoidMain(){ ChildClasschild=newChildClass(); child.print(); } } 程序运行输出: 父类构造函数。 子类构造函数。 I'maParentClass。 上面的一个类名为ParentClass,main函数中用到的类名为ChildClass。 要做的是创建一个使用父类ParentClass现有代码的子类ChildClass。 1.首先必须说明ParentClass是ChildClass的基类。 这是通过在ChildClass类中作出如下说明来完成的: "publicclassChildClass: ParentClass"。 在派生类标识符后面,用分号": "来表明后面的标识符是基类。 C#仅支持单一继承。 因此,你只能指定一个基类。 2.ChildClass的功能几乎等同于ParentClass。 因此,也可以说ChildClass"就是"ParentClass。 在ChildClass的Main()方法中,调用print()方法的结果,就验证这一点。 该子类并没有自己的print()方法,它使用了ParentClass中的print()方法。 在输出结果中的第三行可以得到验证。 3.基类在派生类初始化之前自动进行初始化。 ParentClass类的构造函数在ChildClass的构造函数之前执行。 第七节Vs2005控件 ·SqlDataSource 1、SqlDataSource单独配置---拖放这个空间---选择配置数据源---选择sqlserver---添加连接---选择数据库(这里卡着了! 日! )---测试连接---连接字符串确定---是否保存(是)这里把名字修改成方便 2、gridview绑定---拖gridveiw---然后选择自己需要的数据---高级两个都选择---然后测试一下(完成) 增加一个gridveiw---选择数据源---其他的根据自己的选择来修改(安逸啊) 3、根据刚才配置的在同页面显示详细信息(这里就是dw+asp里面的显示详细信息,不过这里是在同一个页面选择)---拖放一个dailview控件---配置数据源(用原来的,不用重新建立)---查询自己需要的---然后选择where---还是自己选择需要的(不过要设置gridview1)---控件就用刚才的那个---源用Control---按添加---下一步...OK! 设置一下套用格式就可以了! ! ! ·AccessDataSource 哦,mdb必须放在同一个文件目录下面 而,mdf就可以放在其他服务器上 拖放AccessDataSource这个控件---设置完以后再弄个gridview...其他就不多说了,呵呵 和SQl差不多! 其他就是靠自己多多尝试练习一下. 解释: SqlDataSource能自动把连接字符串写到web.config中 这个控件不会自动把连接字符串写到web.config中,解决办法如下: 拖放一个SqlDatasorce控件来设置,这样就可以弥补AccessDataSource不自动写入web.confg的弱点! 不过还是建议不要用AccessDataSource控件 技巧: 可以类似dw中的直接拖放表方法! ! ! ·按纽Button 拖放Button控件(最好修改一下id让他直观些) 点击该控件将会运行所指定代码,所指定的代码写的位置需要多去搜索学习一下. 具体代码的书写非常灵活. 需要把c#基础打好 辨别那个按钮出发的事件就必须设置好CommandName(按钮的id) ·单选列表和复选列表RadioButtonList和CheckBoxList 先讲CheckBoxList 拖控件到需要的位置---编辑项---杂项简单---CheckBoxList的属性多尝试就能明白 重点说一下: 他属性-布局中的RepeaLay---这个是控件是设置表格显示的方式(回车or表格) 数据的绑定: 选择数据源---...---配置select语句---在"指定来自表或视图的列"中选择自己需要数据(id和选项)的以后复制到---"指定自定义sql语句或储存过程"粘贴---在SELECT后面写TOP5---选择"值"和"显示的数据项"---编辑项目(追加一个静态项)---! ! ! 在控件的行为---AppendAata打开---....(不太理解)---在控件上"启动AotoPostBack" RadioButtonList自己尝试一下下...... ·单选按纽和复选框RadioButton、CheckBox CheckBox---注意一下行为里面的东西 RadioButton---注意把需要的几个RadioButton中的GroupName修改成一个 ·广告控件Adrotator 广告控件需要一个xml来存放广告信息,这个xml可以取下载 ImageUrl图片地址 NavigateUrl连接地址 AternateText鼠标停放的信息 Keyword关键词 Impressions权重 在xml中,点右键---察看数据网络---可以可视化操作修改 广告控件Adrotator的绑定在"行为"中进行 注意这个控件必须放在from标签中,否则会出错 ·BulletedList(联到想子弹一样排列的列表,呵呵) 派生自ListControl类,可静可动,与其他列表的控件多一点(比如BuletImageURL--用着项目图像的符号) 用法1、超级连接------拖放列表---添加内容---DisplayMode(HL)超级连接---在集合编辑器中修改的值就是超级连接! 用法2、绑定数据库------绑定...ok 不经常用! ·Calendar1 一: 制定样式 二: 控制日历的选择模式 三: 设置和获取选中的日期 四: 让特殊的信息有提示,同时仿照blog上面的日历,将文件导入到文章的日期中去 一: 制定样式: 拖控件---在属性中设置样式,学过dw以后,这些很简单了 二: 控制日历的选择模式: 这里需要编写代码用swich语句 三: 设置和获取选中的日期: 用Label绑定和DroptList ·Calendar2 四: 让特殊的日期有提示,仿照blog上面的日历: ############ ·下拉列表DropDownList 第一: 使用数组列表做他的数据源,当选择改变的时候能激发一个事件 第二: 两级联动,使用自带的pups库的authors表,使两个表相关联 第三: 动态添加下拉列表的项 第一: usingSystem.Collection;//引入数据空间######### 第二: 用两个SqlDataSource和两个DropDownList来交叉连接,实现联动 第三: ############ ·文件上传FileUpload 事件的发生主要是在bottom控件中,具体编写方法可以参考msdn ·HiddenField、LinkButton、Literal HiddenField: 能隐藏一个域,具体使用方法还需要努力研究,多多练习哦 Literal: 用的比较少 ·超级链接HyperLink 类似超级连接,唯一不同的就是它可以动态的改变很多属性 这个可以用按钮来执行它的事件,在按钮中写入HyperLink需要做的事件 ·image/imagebutton image有三个控件image/imagebutton/imagemap image: 和dw类似,只不过操作的方法不一样 imagebutton: 和button差不多,就是表现形式不一样而已 ·imagemap 没有dw方便,需要在脑子中抽象地去想它的坐标,不是很好用,太抽象了 CircleHotSpot: 圆形区域 RectangleHotSpot: 矩形 PolygonHotSpot: 不规则形 行为---HotSpot---具体设置简单了 ·列表框ListBox 和DopDownlist类似,不同的就是ListBox可以选择多项 SletctionMode: 选择类型,比如多选\单选 Rows: 选择的行数 Selected: 检测条目十分被选中 SlectedItem: 返回的类型是ListItem,获取组建中被选中的条目 Count: 组建中条目的总数 SelecteIndex: 朱践中被选择的条目的索引值 Items: 泛指组建中所有的条目,每一个条目的类型都是ListItem 注意启动Post 演示1: 相应列表框改变的事件 用if语句 演示2: 动态添加列表框中的选择,边且删除指定的项目 行为---Selection中选择---多个 用if...elese语句 演示3: 类表框里面的值可以一次选择多个(按住ctrl选择) SletctionMode="Multiple" 演示4: 两级联动菜单(选择项目,就在指定的地方显示子目录) 使用switch来判断 演示5: 如何实现组件中的指定条目的移动和移动指针到指定位置 "向上移动""向下移动""至首条""至尾条" if语句 ·MultiView 类似cs开发中的tabcontrol,可以在一个页面中放置多个view(我们称为选项卡),虽然Panel的Visivle属
"+thc[i]);
"+abcd[i,j].Tostring());
");
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vs 教材 学习 笔记
![提示](https://static.bdocx.com/images/bang_tan.gif)