Avatar billede alex_sleiborg Nybegynder
03. januar 2006 - 12:07 Der er 3 kommentarer og
1 løsning

Listview og xml filer

Jeg har en listview med 2 kolloner. Med navnene "Forbindelses Navn" og "Sidste Login". Og så har jeg et ukendt antal xml filer, som hver er en forbindelses.

For hver xml fil der er, skal der blive en forbindelse mere i min listview. Så jeg skal vel have lavet noget med en foreach løkke?

Her er min xml fil

<?xml version="1.0" encoding="utf-8"?>
<Forbindelser>
  <Generelt>
    <ForbindelsesNavn>Ny</ForbindelsesNavn> <!-- Her er det navn der skal vises i listview boxen -->
    <SidsteForbindelse>Ny</SidsteForbindelse> <!-- Her er det som skal vises i listview boxen som sidste login -->
  </Generelt>
  <Administrator>
    <UserID>Alex Sleiborg</UserID>
    <Password>xZip59chgbaSt97r81vdaw==</Password>
  </Administrator>
  <Database>
    <Adresse>localhost</Adresse>
    <User>root</User>
    <Password>9HdXd2wy738qVPHvd67UEg==</Password>
    <DbName>brugere</DbName>
  </Database>
</Forbindelser>

Hvordan laver jeg det? Jeg skal læse hver enekelt xml fil
Avatar billede nielle Nybegynder
03. januar 2006 - 18:00 #1
Hvilke dele af processen er det du har problemer med?

Den del hvor du skanner et antal XML-filer igennem, kunne se nogenlunde sådan her ud:

DirectoryInfo scourceDi = new DirectoryInfo(@"C:\DitDir");
foreach (FileInfo xmlFile in scourceDi.GetFiles("*.xml"))
{
    ProcessXmlFile(xmlFile.FullName);
}
Avatar billede nielle Nybegynder
03. januar 2006 - 18:21 #2
Et mere komplert eksempel:

        private void Form1_Load(object sender, EventArgs e)
        {
            listView1.Clear();
            listView1.View = View.Details;
            listView1.Columns.Add("Forbindelses Navn", listView1.Width / 2, HorizontalAlignment.Left);
            listView1.Columns.Add("Sidste Login", listView1.Width / 2, HorizontalAlignment.Left);

            DirectoryInfo scourceDi = new DirectoryInfo(@"C:\Source.Net20\e676429");
            foreach (FileInfo xmlFile in scourceDi.GetFiles("*.xml"))
            {
                ProcessXmlFile(xmlFile.FullName);
            }
        }

        private void ProcessXmlFile(string xmlFileName)
        {
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.Load(xmlFileName);

            XmlNode xmlNode = xmlDocument.SelectSingleNode("/Forbindelser/Generelt");
            if (xmlNode != null)
            {
                ListViewItem lvItem = new ListViewItem(xmlNode.ChildNodes[0].InnerText);
                lvItem.SubItems.Add(xmlNode.ChildNodes[1].InnerText);

                listView1.Items.Add(lvItem);
            }
        }
Avatar billede alex_sleiborg Nybegynder
03. januar 2006 - 20:49 #3
Jeg har fået det til at virke nu. Så smid et svar nielle. Så siger jeg mange tak for hjælpen
Avatar billede nielle Nybegynder
03. januar 2006 - 20:56 #4
Svar :^)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester