PDA

View Full Version : باز شدن دایرکتوری ها در List Box



adel28
سه شنبه 08 مرداد 1392, 00:57 صبح
در یک combo Box درایو های سیستم لیست شده اند.
وقتی هر درایو را انتخاب می کنیم، در List Box پوشه های درایو را نشان می دهد.
چطور میتونم کاری کنم که با Double Click روی هر پوشه در List Box پوشه داخل آن پوشه در همان List box نمایش داده شود؟

قطعه کد مربوط به نمایش پوشه ها با انتخاب هر درایو به صورت زیر نوشتم:




private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex == 0)
{
DriveInfo Drive = new DriveInfo("C:");
if (Drive.IsReady == true)
{
listBox1.Items.Clear();
string[] ArryDirc = Directory.GetDirectories("C:");
for (int i = 0; i < ArryDirc.Length; i++)
{
listBox1.Items.Add(ArryDirc[i]);
}
}
else
{
MessageBox.Show("لطفا دیسک را وارد نمائید");
}
}
if (comboBox1.SelectedIndex == 1)
{
DriveInfo Drive = new DriveInfo("D:");
if (Drive.IsReady == true)
{
listBox1.Items.Clear();
string[] ArryDirc = Directory.GetDirectories("D:");
for (int i = 0; i < ArryDirc.Length; i++)
{
listBox1.Items.Add(ArryDirc[i]);
}
}
else
{
MessageBox.Show("لطفا دیسک را وارد نمائید");
}
}
if (comboBox1.SelectedIndex == 2)
{
DriveInfo Drive = new DriveInfo("E:");
if (Drive.IsReady == true)
{
listBox1.Items.Clear();
string[] ArryDirc = Directory.GetDirectories("E:");
for (int i = 0; i < ArryDirc.Length; i++)
{
listBox1.Items.Add(ArryDirc[i]);
}
}
else
{
MessageBox.Show("لطفا دیسک را وارد نمائید");
}
}
if (comboBox1.SelectedIndex == 3)
{
DriveInfo Drive = new DriveInfo("F:");
if (Drive.IsReady == true)
{
listBox1.Items.Clear();
string[] ArryDirc = Directory.GetDirectories("F:");
for (int i = 0; i < ArryDirc.Length; i++)
{
listBox1.Items.Add(ArryDirc[i]);
}
}
else
{
MessageBox.Show("لطفا دیسک را وارد نمائید");
}
}
if (comboBox1.SelectedIndex == 4)
{
DriveInfo Drive = new DriveInfo("G:");
if (Drive.IsReady == true)
{
listBox1.Items.Clear();
string[] ArryDirc = Directory.GetDirectories("G:");
for (int i = 0; i < ArryDirc.Length; i++)
{
listBox1.Items.Add(ArryDirc[i]);
}
}
else
{
MessageBox.Show("لطفا دیسک را وارد نمائید");
}
}
}

gilas1368
سه شنبه 08 مرداد 1392, 11:34 صبح
این کدی نوشتی خوبه
اما اگ ی سیستمی تعداد درایوهاش بیشتر بود چی؟
چند تا if میخای بزاری؟

پس این روش یکم کاربردی نیست

ی برنامه برات نوشتم امیدوارم بتونه کمکت کنه

این برنامه فقط لیست فولدرها رو میده، فایل های داخل فولدر رو نمایش نمیده

108146

adel28
سه شنبه 08 مرداد 1392, 12:19 عصر
این کدی نوشتی خوبه
اما اگ ی سیستمی تعداد درایوهاش بیشتر بود چی؟
چند تا if میخای بزاری؟

پس این روش یکم کاربردی نیست

ی برنامه برات نوشتم امیدوارم بتونه کمکت کنه

این برنامه فقط لیست فولدرها رو میده، فایل های داخل فولدر رو نمایش نمیده

108146

من در حال یادگیری هستم و هنوز این کلاسی که تعریف کرده ید را بلد نیستم.
بنابر این بدون اون میخوام انجام اش بدم.
در حال حاضر هم فقط می خوام روی هر پوشه در List Box که دوبار کلیک می کنم، List box کل پوشه های اون پوشه رو نشان دهد.

gilas1368
سه شنبه 08 مرداد 1392, 12:27 عصر
ببینید من دو تا تابع نوشتم GetDirctoryOfDrive و GetDirve

و اونها رو فراخونی کردم

مابقی هرچی میبینید Eventهایی هست ک خود کنترل ها دارن