| ASP.NET2.0中创建基于XML应用程序 |
|
| 来源:天极yesky 作者: 加入时间:2006-12-8 访问次数:9 [大 中 小] |
|
 dsActivitiesTasks | 这时,在窗体下部的组件托盘中,你会发现visual studio添加了dsActivitiesTasks的实例,和另外一个组件叫dsActvitiesTasksBindingSource。实际上,你不需要Binding Source,只需要直接将dataset绑定到Datagridview控件,因此,选择这个bingding source控件并删除它。之后,再次使用smarttag的功能,再次选择dsActivitiesTasks做为数据源。
接下来,我们要对datagridview控件进行属性的设置,以将一些不需要显示的列隐藏,设置时,再次选smarttag标志,在弹出的菜单中选择"Edit Columns", 按如下表对其属性进行设置,
| Column |
Property |
| activityid |
Visible=False |
| Taskid |
ColumnType= DataGridViewComboBoxColumn DataSource= DsActivitiesTasks DataMember= tasks.task ValueMember=tasks.taskid |
| description |
Width=180 | 再往该窗体中添加3个按钮,名称分别是btnEditAddTasks, btnSave, btnDelete,则第一个窗体的界面设置完毕。
编写相关代码
编写代码时,分两个步骤:1、加载相关的数据,2、使用户能对数据进行增,删,保存。下面分步说明:
加载相关数据到datagridview控件中。
由于我们已经有了dataset类型的文件,因此我们可以由此创造出上述的两个文件,则应用程序第二次运行时,会先检查是否存在这两个xml文件。代码如下:
在form_load事件中写入
If CheckFileExistence() Then LoadDataSet() Else ’如果两个xml文件不存在,则创建这两个xml文件 CreateXMLFile() End If | 接着,定义一系列的变量,以存放两个xml文件的具体位置,如下代码:
Dim myDocumentsFolder As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim activitiesFileName As String = "\Activities.xml" Dim tasksFileName As String = "\Tasks.xml" Public activitiesFile As String = String.Concat(myDocumentsFolder, activitiesFileName) Public tasksFile As String = String.Concat(myDocumentsFolder, tasksFileName) | 注意其中一个用法My.Computer.FileSystem.SpecialDirectories.MyDocuments返回当前计算机上"我的文档"的具体位置。这里,将两个文件保存到"我的文档"中去。并且用activitiesFile和tasksFile变量,保存两个xml文件实际存取的路径。接下来是相关几个过程的代码,如下所示
Public Function CheckFileExistence() As Boolean ’检查两个xml文件是否存在 If My.Computer.FileSystem.FileExists(activitiesFile) And _ My.Computer.FileSystem.FileExists(tasksFile) Then Return True Else Return False End If End Function
Public Sub CreateXMLFile() DsActivitiesTasks.Tasks.AddTasksRow("Email") DsActivitiesTasks.Tasks.AddTasksRow("Browsing") DsActivitiesTasks.Tasks.WriteXml(tasksFile, System.Data.XmlWriteMode.WriteSchema) DsActivitiesTasks.activities.WriteXml(activitiesFile, System.Data.XmlWriteMode.WriteSchema) End Sub | 上面的createxmlfile过程,首先前两句代码往task的xml文件中增加一些样本数据,分别为email和browsing.接着的两句代码,是.net 2.0中新增加的功能,设置了一个重要的参数writeSchema,以便自动将数据保存到tasksfile和activitiesfile两个文件中,并且自动将xml 的schema模式保存起来,只有这样才能将两个文件之间的在数据表上对应的关系保存起来。
Public Sub LoadDataSet() DsActivitiesTasks.tasks.ReadXml(tasksFile) DsActivitiesTasks.activities.ReadXml(activitiesFile) End Sub | 上面是loaddataset过程,十分简单,分别读取两个xml文件。可以看到,在.net 2.0中,可以同时在一个dataset里加载多个xml文件,如上述所示。而在.net 1.1中,这是很难做到的。
|
|
|
|
|
|