Я не уверен, что вы добьетесь больших успехов, используя сериализатор XML для достижения того, что вам нужно. Возможно, вам будет проще вручную разобрать XML и отобразить их, например,
XDocument xml = XDocument.Parse(@"<?xml version=""1.0"" encoding=""UTF-8""?>
<MyProducts>
<Product Name=""P1"" />
<Product Name=""P2"" />
</MyProducts>");
foreach(var product in xml.Descendants(XName.Get("Product")))
{
var p = new Product { Name = product.Attribute(XName.Get("Name")).Value };
// Manipulate your result and add to your collection.
}
...
public class Product
{
public string Name { get; set; }
}
Если вы используете файл, который, скорее всего, вам нужен для вашего XML, просто замените метод Parse в XDocument с загрузкой и соответствующую подпись.