Questions on DataGridView and XML files

S

Stewart Berman

I have an application that populates a DataGridView control with an XML. file.

1. How do I set up the process so the user initally sees just the headers -- no records.

I have the DataGridView properties set to allow the user to edit data but not add or delete (which
will be down in the program). However when I execute the ReadXML method one emtpy row is shown.
The starter XML contains:
<?xml version="1.0" encoding="utf-8"?>
<DataSet1 xmlns="http://www.tempuri.org/DataSet1.xsd">
<!--SABBackgroundSlideShow Image Conrol-->
<Images>
<Sequence></Sequence>
<Name></Name>
<Location></Location>
<Style></Style>
<Duration></Duration>
</Images>
</DataSet1>

If I delete the entries under <Images> then ReadXML throws an error.

2. How do I map a row selected in the DataGridView control to the DataSet so I can delete it?
 
Z

Zhi-Xin Ye [MSFT]

Hello Stewart,

Thank you for using Microsoft Managed Newsgroup Service. My name is Zhi-Xin
Ye, it's my pleasure to work with you on this issue.

-> 1. How do I set up the process so the user initally sees just the
headers -- no records.

You can call the DataSet.ReadXmlSchema() method to read the XML schema to
DataSet, and assign this DataSet to the DataGridView as data source.

For example, you can do something like this:

gridDataSet = new DataSet();
gridDataSet.ReadXmlSchema("E:\\ImageControl.xml");
dataGridView1.DataSource = gridDataSet;

-> 2. How do I map a row selected in the DataGridView control to the
DataSet so I can delete it?

You can delete the selected rows from the DataGridView directly, and call
the DataSet.WriteXml() method to write the changes back to the XML file.

For example, you can do something like this:

foreach (DataGridViewRow row in this.dataGridView1.SelectedRows)
{
this.dataGridView1.Rows.Remove(row);
}
......
gridDataSet.WriteXml("E:\\ImageControl.xml",
XmlWriteMode.WriteSchema);


If you have any questions or concerns, please don't hesitate to let me know.

Sincerely,
Zhi-Xin Ye
Microsoft Managed Newsgroup Support Team

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subscriptions/aa948868.aspx#notifications.

Note: MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 2 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions. Issues of this
nature are best handled working with a dedicated Microsoft Support Engineer
by contacting Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/en-us/subscriptions/aa948874.aspx
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 
Z

Zhi-Xin Ye [MSFT]

Hello Stewart,

How about this issue now? If you still need any help or have any concern,
please feel free to feedback, thanks.

Sincerely,
Zhi-Xin Ye
Microsoft Managed Newsgroup Support Team

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

This posting is provided "AS IS" with no warranties, and confers no rights.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top