XElement xeRoot = new XElement("Data");
XElement xeSubRoot = new XElement("Rows");
foreach (var items in listView1.Items)
{
XDocument document = new XDocument(new XElement("Data", from item in listView1.Items.Cast<ListViewItem>()
select new XElement("Proc", item.SubItems.Cast<System.Windows.Forms.ListViewItem.ListViewSubItem>().Select((subitem, i) => new XElement(
i == 0 ? "PName":listView1.Columns[i].Text.ToLower(), subitem.Text)))));
document.Save("sample.xml");
}