Witam
Jestem świeży, zielony ucze się sam od zera i właśnie się ostro zakręciłem.
Dopóki jako parametr metody Load() dawałem konkretną scieżkę dostępu do pliku wszystko było ok, ale jak chciałem skorzystać z OpenFileDialog() kompletnie się pogubiłem nie wiem jak przekazac scieżkę dostępu którą otrzymuje w zdarzeniu kliknięcia przycisku, do metody mojej klasy DocumentDXML
moja klasa DocumentDXML
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.IO;
using System.Windows.Forms;
namespace ManagerProgramowSOM
{
class DocumentDXML
{
public int licznikWezlow;
public XmlDocument DXMLDoc = new XmlDocument();
public void LadowaniePlikuDoPamieci()
{
DXMLDoc.Load(sciezka); //<-- dopóki zamiast zmiennej 'sciezka' była "D:\\programy\\plik.dxml" było wszytko ok.
licznikWezlow = DXMLDoc.GetElementsByTagName("program").Count;
}
}
}
Form1.cs
namespace ManagerProgramowSOM
{
public partial class Form1 : Form
{
DocumentDXML mojDokument = new DocumentDXML();
public Form1()
{
InitializeComponent();
}
private void button4_Click(object sender, EventArgs e)
{
OpenFileDialog sciezka = new OpenFileDialog();
sciezka.ShowDialog();
if (sciezka.FileName != "")
{
textBox1.Clear();
listBox1.Items.Clear();
mojDokument.LadowaniePlikuDoPamieci();
textBox1.Text = Convert.ToString(mojDokument.licznikWezlow);
for (int i = 0; i < mojDokument.licznikWezlow; i++)
{
listBox1.Items.Add(mojDokument.DXMLDoc.GetElementsByTagName("program").Item(i).Attributes["name"].Value.ToString());
}
}
}
}
}
Prosiłbym również o naprowadzenie, jak to powinno wyglądać bo mam przeczucię że ostro namieszałęm w zdarzeniu kliknięcia - wydaje mi się że więcej powinienem pakować do swojej klasy a w zdarzeniu tylko odwoływać się do jej metod ale jak zaczynam pakować wszytko w swojej klasie to nie wiem jak określać konkretne kontrolki np. listBox1 i textBox1.