Hola a todos tengo un ejercicio que tiene dos textbox donde se ingresan el nombre y el numero de la persona y se agregan a una lista pero necesito que cuando le de click en el boton guardar me cree un archivo xml adjunto codigo
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Xml.Serialization;
namespace Metodo
{
public partial class Form1 : Form
{
Contacto contacto;
List
<Contacto
> contactoList
=new List
<Contacto
>(); public Form1()
{
InitializeComponent();
}
private void guardarBtn_Click(object sender, EventArgs e)
{
contacto
= new Contacto
(); contacto.nombre=nombreText.Text;
contacto.celular = celularText.Text;
label3.Text = contacto.nombre;
label4.Text = contacto.celular;
contactoList.Add(contacto);
tamLista.Text = contactoList.Count.ToString();
dibujar();
//ESTO LO TENIA EN UN BOTON QUE SE LLAMABA SALVAR PERO NECESITO QUE ME GUARDE DIRECTAMENTE DEL BOTON GUARDAR PERO ME GUARDA DOS CONTACTOS Y ME DA ERROR//
TextWriter tw
= new StreamWriter
("Contactos.xml"); XmlSerializer x
= new XmlSerializer
(contactoList
.GetType()); x.Serialize(tw, contactoList);
nombreText.Text = "";
celularText.Text = "";
}
private void dibujar()
{
detallesContacto.Items.Clear();
for (int i = 0; i < contactoList.Count; i++)
{
Contacto elemento = contactoList.ElementAt(i);
ListViewItem lv1
= new ListViewItem
(elemento
.nombre); lv1.SubItems.Add(elemento.celular);
detallesContacto.Items.Add(lv1);
}
}
private void btnEditar_Click_1(object sender, EventArgs e)
{
if (detallesContacto.SelectedIndices.Count > 0)
{
int posSeleccionada = detallesContacto.SelectedIndices[0];
Contacto editar = contactoList.ElementAt(posSeleccionada);
nombreText.Text = editar.nombre;
celularText.Text = editar.celular;
contactoList.RemoveAt(posSeleccionada);
dibujar();
}
}
}
}
ADJUNTO IMAGEN