bonjour
je voudrais créer une form en c# avec bouton, textbox images etc...
et pouvoir serialise tout ça dans un fichier text (xml) afin de pouvoir modifier les libelle l'image etc ...
actuellement j'utilise ce bout de code mais je n'arrive à recupere les propriété du bouton ou de l'image par exemple
merci de votre aide
private static void Serialisation(KUKARoboter.PlugIn.PlugInBase PlugInName, string FileNameXML)
{
//cree le fichier vide
FileStream fs = File.Create(@FileNameXML);
//Libère les ressources du fichier
fs.Close();
StreamWriter sw = new StreamWriter(FileNameXML); //ouverture du fichier si pas de chemin alors dans le repertoire de travail
//FormCollection Userform = Application.OpenForms; //permet d'utiliser la form dans une class
sw.WriteLine("<Config>");
// foreach (Control c in PlugInName.Controls) //recherche tous les controls
foreach (Control c in PlugInName.Controls) //recherche tous les controls
{
SearchContrl(c, sw);
}
sw.WriteLine("</Config>");
sw.Close();
}
private static void SearchContrl (Control c,StreamWriter sw)
{
if (c is GroupBox) //si un groupe alors on recherche tous les controls du groupe
{
sw.WriteLine("<GroupBox." + c.GetType() + "." + c.Name + ">");
sw.WriteLine(" <Text>" + c.Text + " </Text>");
// WriteInfoControl(c, sw);
foreach (Control ctl in c.Controls)
{
if (ctl is GroupBox) //si un groupe alors on recherche tous les controls du groupe
{
sw.WriteLine(" <GroupBox." + ctl.GetType() + "." + ctl.Name + ">");
// WriteInfoControl(ctl, sw);
// sw.WriteLine(" </Text>");
foreach (Control ctl2 in ctl.Controls)
{
sw.WriteLine(" <" + ctl2.GetType() + "." + ctl2.Name + ">");
// WriteInfoControl(ctl2, sw);
// sw.WriteLine(" </Text>");
sw.WriteLine(" </" + ctl2.GetType() + "." + ctl2.Name + ">");
}
sw.WriteLine(" </GroupBox." + ctl.GetType() + "." + ctl.Name + ">");
}
else
{
sw.WriteLine(" <" + ctl.GetType() + "." + ctl.Name + ">");
WriteInfosControl(ctl, sw);
// sw.WriteLine(" </Text>");
sw.WriteLine(" </" + ctl.GetType() + "." + ctl.Name + ">");
}
}
sw.WriteLine("</GroupBox." + c.GetType() + "." + c.Name + ">");
}
else //si pas un groupe
{
sw.WriteLine("<" + c.GetType() + "." + c.Name + ">");
WriteInfosControl(c,sw);
// sw.WriteLine(" </Text>");
sw.WriteLine("</" + c.GetType() + "." + c.Name + ">");
//sw.WriteLine(" <Font>" + c.Font + "</Font>");
}
}
merci j'ai besoin de votre aide