《visual basic 2005 从入门到精通》 笔记(13-20章)

来源:互联网 发布:26了转行程序员好伤心 编辑:程序博客网 时间:2024/05/22 02:29

第十三章 处理文本文件和字符串

13.1使用文本框对象显示文本文件
使用Visual Basic语言将文本文件的内容加载到文本框中,需要用到4个函数。
用于加载文本文件内容的函数
函数
说明
FileOpen
打开一个用于输入或输出的文本
LineInput
从文本文件中读取一行输入信息
EOF
检查是否到达文本文件的末尾
FileColse
关闭文本文件


FileOpen函数;FileOpen(Filenumber,pathName,mode)
Filenumber 是一个1~255之间的一个整数
pathName 是有效的Microsoft Windows 路径名
mode 模式,是用于表示文件使用方式的关键字。

当使用OpenFileDialog对象来获取文件路径名时,FileOpen函数的语法一般如下所示:
FileOpen(1,Openfiledialog1.filename,openMode,input)
这里,OpenfileDialog1.FileName 属性表示文件的路径。OpenMode.Input是模式,1 是要打开的文件编号。
使用这种方式打开的文件叫做“顺序文件(Sequential File)”
 FileOpen(1, OpenFileDialog1.FileName, OpenMode.Input)
                Do Until EOF(1) 'read lines from file
                    LineOfText = LineInput(1)
                    'add each line to the AllText variable
                    AllText = AllText & LineOfText & vbCrLf
                Loop
file.close(1)

13.2 使用StreamReader类和My.computer.FileSystem打开文本文件
这两个对象在所有的Visual Studio编程语言中都可以使用。

StreamReader类
需要添加引用 : Imports System.io
Dim StreamToDisplay as StreamReader
StreamToDisplay =new StreamReader(“c:/1.txt”)
Textbox1.text=StreamToDisplay.ReadToEnd
StreamToDisplay.close()

My对象
my对象是一项“快速拨号”或快速访问特性,旨在简化访问.net框架。
my对象的分类
对象
说明
My.Application
有关当前应用程序的信息,包括标题、目录和版本号
My.Computer
有关当前(本地)计算机硬件、软件和文件信息。包括my.computer.filesystem。
My.Forms
当前Visual Basic项目的窗体信息。
My.User
当前在my.computer上激活的用户信息
My.WebServices
my.computer上激活的WEB服务信息。也可用于访问新的web服务。

Textbox1.text=my.computer.FileSystem.ReadAllText(OpenFileDialog1.Filename)

13.3 在磁盘上创建新文本文件
使用了SaveFileDialog对话框
        SaveFileDialog1.Filter = "Text files (*.txt)|*.txt"
        SaveFileDialog1.ShowDialog()
        If SaveFileDialog1.FileName <> "" Then
            FileOpen(1, SaveFileDialog1.FileName, OpenMode.Output)
            PrintLine(1, txtNote.Text)  'copy text to disk
            FileClose(1)
        End If

13.4 使用程序代码处理文本字符串
.net框架中的一些方法
.net框架方法
Visual Basic函数
说明
.net框架实例
ToUpper
UCase
将字符串中的字母变成大写
name=“kim”
Uname=name.ToUpper
ToLower
LCase
变成小写
Lname=name.ToLower
Length
len
确定字符串中的字符数
dim le as integer=name.length
SubString
Mid
从某一指定起点开始返回字符串中指定个数的字符。字符串中第一个字母的下标为0。
SubStr=name.substring(0,2)
IndexOf
Instr
从一个较长的字符串中查找另一个字符串的起始点。
dim i as integer=name.index("n")
i=0
Trim
Trim
删除字符串中开头的和末尾的空格
Tname=name.trim
Remove

从字符串中删除字符
reStr=name.remove(1,1)
restr=nme
Insert

添加字符
InStr=name.Insert(2,"2222")
instr=na2222me
StrComp

比较字符串,忽略大小写
Dim Match as boolean
match=strcomp(str1,str2,comparemethod.text)

ASCII是American Standard Code for Information Interchange 的首字母缩写。全称:美国信息交换标准码
取一个字母的ASCII值: Asc('a')
将一个数值转化为字母: chr(64)
字符串排序: ShellSort

第14章 在运行时管理windows窗体和控件

14.1 在程序中添加新窗体
在屏幕上显示时必须进行处理的窗体称为对话框。对话框在Visual Basic 6 中称为 有模式窗体(Modal Form),使用ShowDialog打开。
如果是可以切换离开的窗体,称为非模式窗体(non-modal)窗体或者无模式窗体(modeless)。
添加窗体:新建项目以后,单击【项目】菜单上的【添加windows窗体】。
将Helpinfo.vb的界面改为如下所示(注意,窗体文件的后缀也是.vb):
双击 button1 按钮,输入如下语句:
me.dialogresult=DialogResult.OK
当程序运行时,单击按钮就会将当前窗体的DialogResult.DialogResult的属性设置为 DialogResult.OK 。如果设置了DialogResult的值,窗口自动关闭。
14.3 在桌面上安排窗体位置
Visual Basic中有一个叫做 DesktopBounds的新属性,它包含于项目中,并且对应于每个窗体。DesktopBounds只能在运行时读取或设置,它取一个矩形的尺寸作为参数。
还有一个属性是,StartPosition(初始位置)属性,它采用如下参数来确定窗体的位置:Manual(手动设置);CenterScreen(屏幕中央),Windows DefaultLocation(Windows默认位置),WindowsDefaultBounds(windows默认边界),CenterParent(父窗体中央)。
如果将StartPosition属性设置为Manual,变可以利用Location属性(第一个数字X是到屏幕左边缘的距离,第二个数字Y是到屏幕顶部边缘的距离。)

设置 DesktopBounds属性
        'Create a second form named form2
        Dim form2 As New Form

        'Define the Text property and border style of the form
        form2.Text = "My New Form"
        form2.FormBorderStyle = FormBorderStyle.FixedDialog

        'Specify that the position of the form will be set manually
        form2.StartPosition = FormStartPosition.Manual

        'Declare a Rectangle structure to hold the form dimensions
        'Upper left corner of form (200, 100)
        'Width and height of form (300, 250)
        Dim Form2Rect As New Rectangle(200, 100, 300, 250)

        'Set the bounds of the form using the Rectangle object
        form2.DesktopBounds = Form2Rect

        'Display the form as a modal dialog box
        form2.ShowDialog()

窗口的最大化,最小化和恢复
要使得窗体可以最小化和最大化,首先应当确认该窗体上有最大化和最小化按钮。
MaximizeBox=true
MinimizeBox=true

在程序代码或【属性】窗口中,将该窗体的windowsState属性设置为Minimized,Maximized或Normal。(如果是在代码中进行设置,需要添加一个FormWindowState常量)
windowState=formWindowState.minimized

14.4 在程序运行时向窗体添加控件
Dim Button1 as New Button
Button1.text="OK"
button1.Location=new Point(20,25) (左上角的坐标)
Form2.Controls.add(button1) '还记得12章讲的集合collection吗?
如果是当前窗体添加按钮,可以写为 me.controls.add(button1)

14.5 在窗体上排列控件
主要的属性是: Anchor(锚定)和Dock(停靠)。前者强迫窗体上的对象与窗体的某个特定边缘保持固定距离,后者强迫对象与窗体边缘保持接触。

14.6 补充知识:指定启动对象
如果项目包含多个窗体,当程序运行时,默认是Form1首先显示。不过,也可以在【My Aoo 属性】里面修改。

第十五章 添加图形和动画效果

15.1 使用System.Drawing命名空间添加图形
System.Drawing.Graphics类
基本图形与创建方法
图形
方法
描述
直线
DrawLine
具有两个端点的直线
矩形
DrawRectangle
具有4个端点的矩形或者长方形
弧形
DrawArc
具有两个端点的曲线(椭圆的一部分)
圆/椭圆
DrawEllipse
受矩形“束缚”的椭圆形
多边形
DrawPolygon
具有多个点和多条边(存储在一个数组中)的复杂形状
曲线
DrawCurve
经过多个点(存储在数组中)的弯曲线段,成为基数样条的复杂曲线也可以使用此方法绘制。
bezier样条
DrawBezier
用4个点(第2、3点是控制点)绘制的曲线


使用时,首先要创建一个Graphics对象,以及一个Pen或者Brush对象以表明想要绘制的图形的属性。
Dim GraphicsFun as System.drawing.Graphics
Dim Pencolor as new System.Drawing.Pen(System.Drawing.Color.Red)
GraphicsFun=me.CreateGraphics
GraphicsFun.DrawLine(Pencolor,20,30,100,80)

Graphics变量需要用Windows窗体的GreateGraphics方法实例化

如果在程序中进行测试,会发现创建的线条至于在没有任何其他元素覆盖的时候才会持续保留在窗体上。如果一个对话框不时出现在窗体上并且覆盖该线条,或者最小化成体然后再最大化,线条依然会消失。要解决这个问题,需要在窗体的Paint事件过程中加入合适的代码,这样在每次刷新窗体的时候,图形也会跟着刷新。
在窗体上移动对象的方法和属性

关键字 描述 Left 用于水平移动(左右)对象的属性 Top 用于垂直(上下)对象的属性 Location 将对象移动到特性的位置的属性 SetBounds 设置对象的边界以达到特定的位置和尺寸的方法

例如:Button1.left=button1.location+50

Button1.location=new Point(Horizontal,vertical)

 

15.3 在程序运行时题缩放对象

Visual Basic还保留了height和width属性。例如:button1.height=button1.height+50

 

15.4 改变窗体的透明度

 

object.Opacity=0.75 ‘Opacity 是按照百分比制定的,其范围是0~1.

 

第十六章 继承窗体和创建基类

16.1 利用继承选择器继承窗体

首先要建立项目,然后编译。因为只能继承那些已经编译成为exe或dll文件的窗体。每次重新编译基础窗体时,对基础窗体的改动也会传递给派生(继承)窗体。

单击【生成】菜单下的【生成 my app】,然后单击【项目】菜单下的【添加新项】命令,后单击【集成的窗体】模板。

 


单击【添加】按钮,接受新继承窗体的默认设置,如果要浏览其他编译的窗体,单击【浏览】按钮,在硬盘上定位。

继承的窗体上,有微小图标的表明来自一个继承源。

16.2 创建自定义基类
一个派生类Form2能够从另一个派生类Form1那里继承功能。除了继承器,Visual Basic还提供了 Inherits语句。使用时,必须将Inherits语句置于窗体代码的顶部。作为类定义的第一个语句。
创建属性:
Public Property FirstName() As string
所需的要素有:一个Get代码块(它决定了程序员检查FirstName属性时会看到什么),一个Set代码块(它决定了设置或者更改属性FirstName时会发生什么),还有一个End Property语句(标志属性过程结束)。
Public Property firstName() as string
Get 
    return Name1
End Get
Set (ByVal value As string)
    Name1=value
end Set
End Property
16.3 补充知识:继承基类
Public Class Teacher2
    Inherits Person

End Class


第十七章 使用打印机

17.1 使用PrintDocument类
Visual Basic 2005 中管理打印的基本体制是PrintDocument类,可以通过以下两种方式创建PrintDocument类:
  • 将PrintDocument控件添加到窗体上
  • 用Visual Basic代码以编辑方式定义
PrintDocument类提供了若干用于打印和图形的实用对象,包括PrinterSetting对象(包含打印机的默认设置)、PageSetting对象(包含特定页的打印设置)和PrintPageEventArgs对象(包含将要打印页的事件信息)。需要在窗体代码的顶部添加Imports 语句。
Imports System.Drawing.Printing
新建立一个项目,双击 Printdocument 对象,添加PrintDocument1。

添加一个按钮,并双击,写入代码:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            AddHandler PrintDocument1.PrintPage, AddressOf Me.printgraphic
            PrintDocument1.Print()
        Catch ex As Exception
            MessageBox.Show("Error" + ex.ToString)
        End Try
    End Sub


 这些代码使用了AddHandler 语句,该语句决定了当PrintDocument1对象的PrintPage事件发生时,应当调用PrintGraphic事件处理程序。

    Private Sub PrintGraphic(ByVal sender As Object, ByVal ev As PrintPageEventArgs)
        ev.Graphics.DrawImage(Image.FromFile(textbox1.text), ev.Graphics.VisibleClipBounds)
        ev.HasMorePages = False
    End Sub

该过程使用了与当前打印页关联的Graphics.DrawImage方法。将ev.HasMorePages属性设置为False,这样Visual Basic就明白打印作业不是多页打印了。


DrawImage方法会将图形扩展到打印机在一页上所能利用的最大尺寸。将打印作业发送给打印机时,会出现

对话框。这个对话框也是PrintDocument的产物。

 

打印文本对话框中的文本

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim PrintDoc As New PrintDocument
            AddHandler PrintDoc.PrintPage, AddressOf printText
            PrintDoc.Print()
        Catch ex As Exception

        End Try
    End Sub

    Private Sub PrintText(ByVal sender As Object, ByVal ev As PrintPageEventArgs)
        ev.Graphics.DrawString(TextBox1.Text, New Font("arial", 11, FontStyle.Regular), Brushes.Black, 120, 120)
        ev.HasMorePages = False
    End Sub

打印文本时,不要使用显示图形图像的Graphics.DrawImage,而必须使用打印文本字符串的Graphics.DrawString。文本框的Text属性中指定了要打印的文本,并指定了某些基本的格式和该页的xy坐标值。

17.2 打印多页文本文件
....
着实没看懂

第十八章 开始使用ADO.NET

18.1 使用ADO.NET进行数据库编程
字段:称为。有关一个特性客户或企业的所有信息成为一条“记录”,有时称为“”。当创建数据库时,信息被输入到字段和记录中。
数据库编程,首先要建立连接,接着数据源配置向导创建数据集,数据集表示计划在程序中要用到的一个或多个数据库表操作的不是实际数据,而是它的一个副本)。将数据表适配器数据导航器数据集关联起来。然后可以使用【数据源】窗口或【数据绑定】属性设置将数据集中的信息绑定到窗体上的控件。

启动Visual Basic,新建项目 My ADO Form,单击【数据】-【添加新数据源】

选择【数据库】,然后单击【下一步】

单击,【新建连接】按钮。
【修改/选择数据源】对话框用于选择偏好的数据库格式。根据需要选择数据源,本例中使用的是microsoft Access 数据库文件。然后选择继续。
选择数据库文件后,单击结束。
再单击下一步,向导会显示一个警告信息,提示已选定一个新的本地数据库,询问用户是否将数据库复制到项目文件夹中。这个提示只有在首次连接本地数据库文件时才会出现此消息,如果是在重复练习,可能不会看到这个消息。
单击下一步,【数据源配置向导】询问用户“要将连接字符串保存到应用程序配置文件中吗?”默认选项是保存连接字符串。
可以在【解决方案资源管理器】中的配置文件中编辑此字符串,而如果不保存在配置文件中,当数据库位置发生变化时,则需要在程序代码中查找并修改链接字符串,然后重新编译程序。

 

选择 下一步 保存默认字符串,然后 提示用户选择在此特定项目中要使用的数据库对象的子集。Visual Basic允许用户使用部分数据库或结合不同的数据库,这项特性在建立以数据库为中心的应用程序时很有用。

在对话框中选择的条目引用为项目中的数据库对象。用户选择的所有数据库对象统称为数据集。数据集的默认名称为xxxDataSet .

如果在数据集中添加、删除或修改数据库记录,不是真正修改基础的数据库表,除非发出命令,将修改写回原始的数据库。数据库管理员成此种布局为脱机数据源,只在实际的数据库和用户数据集之间存在一个抽象层。

 

单击【完成】

 

 

 在【解决方案资源管理器】中,可以看到StudentDataSet.xsd的新文件,此文件为XML模式,他描述了创建的数据集中表、字段、数据类型和其他元素。此模式文件的存在意味着已经向项目中添加类型化数据集。
类型化数据集的优势在于它启用了Visual Studio代码编辑器的“自动完成语句”功能,并且给出对正在使用的字段和表的说明性信息。
在【解决方案资源管理器】选择此模式文件,单击【查看设计器】按钮。
在名为数据集设计器的可视化工具中可以看到与新数据集有关的表、字段和数据适配器的可视表示。数据集设计器包含工具,用于创建在数据集和应用程序间通信的组件(数据库程序员称之为数据访问层组件)。

18.2 【数据源】窗口

用于显示已在项目中配置使用的数据集的可视化表示,有助于将数据集绑定到窗体上的控件。单击【数据】菜单下的【显示数据源】。

在工具箱中的【公共控件】中的大多数控件都具有内置的显示数据库信息的能力,当这些控件与数据集中的数据完备的字段连接时称为绑定控件
将Instructor字段拖放到Form1中。

这个时候Visual Basic自动创建了几个对象用于管理数据访问过程的内部事务,这些对象包括:
  • StudioDataSet,使用【数据源配置向导】创建的数据集,用于表示Students数据库中的字段;
  • InstructorsBindingSource,一个中间组件,作为INstuctors表和窗体上的绑定控件间的管道;
  • InstrucrosTableAdapter,一个中间组件,用于在StudentsDataSet和基础Students数据库表之间移动数据。
  • InstructorsBindingNavigator,提供与导航工具栏和Instructors表相关的导航服务和属性。
18.3 用绑定控件显示数据库信息
新建立一个项目文件,添加MaskedTextbox和Textbox另个控件。
在【数据源】窗口中,将PhoneNumber字段拖到maskedTextbox1对象上。将数据集对象拖放到窗体上已存在的对象(称为目标对象)时,不会生成新的绑定对象。而是设置目标对象的DataBinding属性来匹配【数据源】窗口中被拖放的数据集对象。
运行以后,可以发现掩码文本框对象对电话号码信息进行了正确的格式化。
还有,两个数据集字段一起滚动,显示的教师名匹配Students数据库中记录的相对应的电话号码。这种同步是由instructorsBindingNavigator对象处理的,它跟踪窗体上每个绑定对象的当前记录。
18.4 补充知识:编写SQL语句筛选数据
在窗体上单击InstructorTextbox对象,单击【数据】-【添加查询】
在设计器中选中绑定对象(如InstuctorTextBox)时【添加查询】命令才可以用。【查询标准生成器】对话框出现。在新查询名称中输入:SortInstuctors。可以选择“查询生成器”来打开可视界面对生成数据库查询语句。
单击完成以后,在用户窗体的顶部会出现一个SortInstuctors按钮,以及生成一个SortInstuctorsToolStrip的托盘对象。
第十九章 使用DataGridView控件显示数据
19.1 使用DataGridView显示数据库记录
DataGridView控件通过在窗体上构建由行和列组成的网络来表示消息。这个控件通过其BindingSource属性链接(或绑定)到基础数据访问组件。一旦DataGridView对象绑定到了有效数据源上,Visual Studio就会用Fill方法自动填充该网络对象。
在【数据源】窗口单击Instructors表,然后单击右边的下拉箭头显示可以绑定到Instructors表的控件列表。因为已经选定了整个表,所以在列表框不会出现单个的列表框控件。
取而代之的是以下各项:
  • DataGridView,默认选项,它显示由列和行组成的网格。
  • 详细信息,为拖放到窗体上的表中的每个字段自动创建单独的控件(带有相关标签),此处不会演示Details选项,但当用户想要以精确的格式表示表格数据时,此选项很有用。
  • [无],它将表和用户界面元素或空间间之间的所有关联移除(如果为表选择“无”,将不能把表从【数据源】窗口拖放到窗体上,并且表名前会出现一个禁用图标)。
  • 自定义,它允许用户选择适合显示多个数据库字段的不同控件(如ListBox控件)。

绑定到窗体以后,可以进行预览:
单击 【预览】即可。
从DataGridView中移除特定的列:
在打开的【DataGridView任务】列表中,单击【编辑列】命令,可以删除特性的列:
可以运行这个程序,在Form1_load事件过程中,可以看到以下程序语句被添加了进来:
 Me.InstructorsTableAdapter.Fill(Me.StudentsDataSet.Instructors)
19.2 格式化DataGridView单元格
定义数据单元格的大小、颜色、顺序
单击DataGridView对象,然后打开【属性】窗口;
单击Columns属性,点击省略号按钮,在【编辑列】对话框中打开Columns集合(如上图)。
修改 Width 可以调整每个列的宽度
选择AlternatingRowsDefaultCellStyle属性,单击省略号标签出现【CellStyle生成器】对话框,这个属性控制在交替行中的网格单元格的背景色。
选择BackColor属性,单击下拉箭头,选择颜色。
出现在单元格网格边界周围的颜色是由BackGroundColor属性控制的,如果更改网格中所有的单元格颜色,可调整DefaultCellStyle属性,要更改标题单元格的背景色,可修改ColumnHeadersDefaultCellstyle属性。

19.3 聚焦以数据为中心:添加其他的网格和导航控件
在上一个例子中继续添加控件,选择【工具箱】-【数据】,将BindingNavigator控件添加进来。将其属性中的BindingSource属性改为InstructorsBindingSource。
19.4 补充知识:更新原始数据库
程序中的数据集只不过是原始数据库中数据的表示形式,如果进行了修改也不会被写回到数据库中。除非将dataGridView对象的ReadOnly属性设置为false。
在程序中修改数据后,单击导航栏的Save按钮。
在修改了数据后在左侧会出现一个小铅笔的图标,单击导航栏上的Save按钮进行保存。会自动添加如下语句:
Me.ClassesTableAdapter.Update(Me.StudentsDataSet.Classes)

第二十章 使用Visual web Developer和ASP.NET创建网站和网页
20.1 ASP.NET 2.0 技术内幕
每个网站包括以下两部分:
一个WEB窗体页,包含了HTML和实现用户界面的控件
一个后台代码文件,包含了WEB窗体页幕后程序代码的代码模块
通常情况下,WEB窗体页面代码存储在一个.aspx文件中,后台代码文件则存储于一个.aspx.vb。网站可以包含代码模块(.vb文件)、HTML页(.html)、配置信息(web.config文件)、全局(Global.asax文件)和其他组件。
20.1.1 网页与Windows窗体
HTML控件(位于Visual Web Developer[工具箱]的HTML选项卡中)是默认的客户控件,这意味着他们只能在最终用户的浏览器中运行。实际上,HTML控件也可以设置为服务器控件。操作方法为,右击网页设计其中的控件,然后选择【作为服务器空间运行】,或者直接将其Runat属性设置为Server。
20.2 使用Visual Web Developer 构建网站
软件需求:需要系统安装Microsoft Internet信息服务(Internet Infomation Service,IIS)、Microsoft FrontPage 2000 服务器扩展和.net框架库。
单机测试的时候,如果是先安装Visual Studio然后再安装IIS,可能会出现问题。
新建网站:点击文件-新建网站。
在设计器底部有两个标签:【设计】和【源】。
在【解决方案资源管理器】中,Default.aspx文件包含了活动的网页的用户界面代码。名为Web.Config的配置文件也列在其中。
20.3使用网页设计器
在【设计】模式下打开网页设计器,选择【格式设置】,即可像WORD等编辑文字一样对网页进行编辑。如果找不到【格式设置】,可以在其他窗口中找到。


20.4 向网站中添加服务器控件
在网页设计器上,如果在【工具箱】中双击控件名,此控件将在插入点插入。添加控件到网页之后,还将为这些控件设置属性。
书中的例子:
双击网页上的Calculate按钮,输入以下代码:
        Dim LoanPayment As Double
        'Use Pmt function to determine payment for 36 month loan
        LoanPayment = Pmt(CDbl(txtInterest.Text) / 12, 36, CDbl(txtAmount.Text))
        txtPayment.Text = Format(Abs(LoanPayment), "$0.00")
滚动到代码编辑器的顶部,输入下列程序代码作为文件的第一行:
Imports system.math

单击 【启动调试】,会出现如下对话框:
推荐选择修改web.config文件。

20.5 向网站添加其他网页和资源
可以使用如下两种方式来添加HTML页。
  1. 使用【网站】-【添加新项】命令创建新的HTML页。
  2. 使用【网站】-【添加已有项】命令添加已经创建的HTML页
使用HyperLink控件
在【设计】模式中显示网页Default.aspx
双击【工具箱】中【标准】选项卡中的HyperLink控件,在插入点创建超链接对象。
修改其Text属性为 Get Help
点击NavigateUrl属性旁边的省略号按钮,打开【选择URL】对话框,提示定位到要连接的网页位置。
20.6 在网页中添加数据库记录
在【工具箱】-【数据】选项卡中添加GridView控件,
单击选择数据源,将现在的数据源添加进来,如果是网站之外的数据源,需要直接将ACCESS的地址写入到地址栏中:
单击【完成】
全部完成以后,在网络单元格中仍然会显示占位符信息“abc”
保持【GridView】列表框为打开状态,单击【自动套用格式】则可以选择列表的模板。
20.7 补充知识:在Internetexploer中设置网站标题
在【设计】模式下打开default.aspx网页,选择【属性】-【对象】下拉列表框,选择documentduixiang ,将title 属性设置为“我的标题栏”则会修改在IE里面的标题显示:
服务器控件都在左上角有一个绿色的三角符号标识。

全部完成。
Miller
2007-2-22