0

我有一个提交表单,通过单击按钮将数据存储到 XML 文件中。每次用户单击提交按钮时都会创建一个新的 XML 文件。在表单中,我还使用了一个可编辑的 GridView ( id = gvProductNumber ),它将其数据写入同一个 XML 文件。我的问题是,当用户单击提交按钮时,通过文本框控件提交的数据被写入 xml 文件,但来自可编辑 Gridview 的数据不会保留。因此,我只剩下从文本框控件提交的数据。

这是我的代码 -按钮单击- 用于存储通过文本框控件提交的数据的代码段 - 它将用户的名字和姓氏连同产品 ID 和产品编号一起写入 xml 文件。

Public Sub Write_XML(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim textWriter As New XmlTextWriter(Server.MapPath("xml/PersonDataV.xml"), Nothing)
    textWriter.Formatting = System.Xml.Formatting.Indented
    'Start New Document
    textWriter.WriteStartDocument()
    'Write a Comment
    textWriter.WriteComment("This is a comment")
    'Insert Start Element -root element node
    textWriter.WriteStartElement("PersonalData")
    'write the child element
    textWriter.WriteStartElement("products")
    'write the child element
    textWriter.WriteStartElement("product")
    'Write ProductID Element and Data
    textWriter.WriteStartElement("productID", "")
    textWriter.WriteString(txtProductID.Text)
    textWriter.WriteEndElement()
    'Write ProductID Element and Data
    textWriter.WriteStartElement("productNumber", "")
    textWriter.WriteString(txtProductNum.Text)
    textWriter.WriteEndElement()
    textWriter.WriteEndElement()
    textWriter.WriteEndElement()
    'write the child element
    textWriter.WriteStartElement("customers")
    'write the child element
    textWriter.WriteStartElement("customer")
    'Write LastName Element and Data
    textWriter.WriteStartElement("LastName", "")
    textWriter.WriteString(txtLastName.Text)
    textWriter.WriteEndElement()
    'Write FirstName Element and Data
    textWriter.WriteStartElement("FirstName", "")
    textWriter.WriteString(txtFirstName.Text)
    textWriter.WriteEndElement()
    'End Everything
    textWriter.WriteEndDocument()
    'Clean up
    textWriter.Flush()
    textWriter.Close()
    'Display the XML Document
    Response.Redirect(Server.MapPath("xml/PersonDataV.xml"))
End Sub

Gridview 使用典型的插入/编辑/删除功能来写入 xml 文件。有没有办法可以将可编辑 Gridview 的 ID 或 Gridview 中使用的文本框实现到上面的 Snippt 中?当我尝试使用 Gridview 的文本框 ID 作为 WriteString 的参数时,就像我对文本框控件所做的那样,我收到一条错误消息,指出它们没有被声明。

4

1 回答 1

0

如果您使用 aDataTable并将其添加到 aDataSet您使用Dataset.WriteXml方法。相反,您可以使用DataSet.ReadXml方法重新加载数据。

如果设置为 ,则Gridview显示来自 的数据。DataTableDataSource

于 2013-08-15T19:07:45.370 回答