Witam....hmmm sry ale nie wiem za bardzo jak nazwac temat pierwszy raz mi sie tak zdarzylo...;)
Ogolnie chodzi o to ze mam menustrip w nim event click na "Otworz katalog"...wszystko dziala, jednak przed wyborem katalogu zrobilem forme ktora pozwala wybrac rozszerzenie zdjec ktore maja zostac potem zaladowane...problem polega na tym ze gdy wywolam to forme w konstruktorze glownej formy to mniej wiecej dziala...ale wtedy musze klikac jeszcze w menu -> otworz katalog zeby wybrac katalog a chce to zrobic wszystko w tym jednym zdarzeniu z menustrip:
Tak wyglada kod(jego czesc) do wyboru rozszerzen:
public class ExtensionChooseForm : Form
{
private Dictionary<string, CheckBox> checkboxs = new Dictionary<string, CheckBox>();
public List<string> extension = new List<string>();
private int State;
public int state
{
get
{
return this.State;
}
set
{
this.State = value;
}
}
public ExtensionChooseForm()
{
//tutaj mamy kod ktory wyswietla forme wszystko jest ok
}
private void button_ok_Click(object sender, EventArgs e)
{
foreach (string name in checkboxs.Keys)
{
if (checkboxs[name].Checked)
{
extension.Add(checkboxs[name].Text);
}
}
this.state = 1;
this.Close();
}
private void button_selectAll_Click(object sender, EventArgs e)
{
foreach (string name in checkboxs.Keys)
{
checkboxs[name].Checked =(checkboxs[name].Checked == true) ? false : true;
}
}
}
No i dalej zdarzenie click z tego menustrip:
private void otworzKatalogToolStripMenuItem_Click(object sender, EventArgs e)
{
List<string> path = new List<string>();
string[] extension;
string folder;
this.formcheck = new ExtensionChooseForm();
//to nie dziala po kliknieciu ok okno znika ale browserdialog sie juz nie pojawia
if (this.formcheck.state == 1)
{
extension = this.formcheck.extension.ToArray();
this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
this.folderBrowserDialog1.ShowNewFolderButton = false;
this.folderBrowserDialog1.RootFolder = System.Environment.SpecialFolder.MyComputer;
DialogResult result = this.folderBrowserDialog1.ShowDialog();
folder = folderBrowserDialog1.SelectedPath;
if (result == DialogResult.OK)
{
//reszta kodu
}
}
}
Hmm co robie zle...?
Tak jakby pole/wlasciwosc State/state nie istanialo/nie ustawialo sie....