Hirdetés

Új hozzászólás Aktív témák

  • valyogvisko

    csendes tag

    Sziasztok,

    volna egy (valószínűleg számotokra primitív) kérdésem, kérnék némi segítséget: szeretnék egy progit írni, ami megnyit egy xml fájlt, és tudok benne keresni és kilistázni dolgokat.

    A lényeges rész így néz ki:
    private void openButton_Click(object sender, EventArgs e)
    {
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.Filter = "XML|*.xml";
    if (ofd.ShowDialog() == DialogResult.OK)
    {
    XmlDocument doc = new XmlDocument();
    doc.Load(ofd.FileName);
    }

    }

    private void searchButton1_Click(object sender, EventArgs e)
    {
    if (searchInput1.Text != null && searchInput1.Text.Length >= 3)
    {
    foreach (XmlNode node in doc.DocumentElement)
    {
    string name = node.Attributes[0].InnerText;
    if (name == searchInput1.Text)
    {
    foreach (XmlNode child in node.ChildNodes)
    {
    listView1.Items.Add(child.InnerText);
    }
    }
    }
    }
    else
    {
    MessageBox.Show("Invalid Input");
    searchInput1.Text = string.Empty;
    searchInput1.Focus();
    }
    }

    Alapvetően minden jó, kivéve a "doc.DocumentElement" részt, mert egy olyan doc-ra hivatkozom, ami ott, abban a private részben nem létezik (lévén hogy egy szintén private részben nyitottam meg, ha jól értem a problémát). Amit én szeretnék, hogy az "openButton" úgy nyissa meg az xml-t, hogy az mindenhol a későbbiekben "látható" legyen. Maga a progi minden használatkor egyetlen xml-t fog megnyitni, tehát biztos hogy lehetne valahogy egyszerű módon megoldani a gondot, de nem minden használatkor ugyanazt, ezért én nem tudom, hogyan kellene :)
    Kérlek nézzétek el nekem a nem megfelelő szóhasználatot, 3 napja láttam először C# kódot, bőven van még mit tanulnom belőle, szóval ha lehet akkor tételezzünk fel határtalan intelligenciát és nagyon kevés tárgyi tudást :D

    Köszönöm.

Új hozzászólás Aktív témák