PDA

View Full Version : سوال: چگونگی نوشتن یک دستور خاص با if



salehvasaleh
چهارشنبه 06 مرداد 1389, 10:21 صبح
طی یک دستور if می خوام بگم که اگه آیتمی از آیتمهای لیست باکس سلکت شده بود ، ویزیبل ، پیکچر باکس برابر true بشه چی باید بنویسم؟ممنون


if (listBox1.SelectedItem == ؟)
{
pictureBox1.Visible = true;
}

mahdi_7610
چهارشنبه 06 مرداد 1389, 11:37 صبح
if (checkedListBox1.GetItemChecked(0) == true)
{
pictureBox1.Visible = true;
}

salehvasaleh
چهارشنبه 06 مرداد 1389, 12:31 عصر
if (checkedListBox1.GetItemChecked(0) == true)



{
pictureBox1.Visible = true;

}


این دستور رو بخوام برای لیست باکس بنویسم چطوری می شه؟

Salar Ashgi
چهارشنبه 06 مرداد 1389, 13:28 عصر
یه مثال ساده :



private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int i = listBox1.SelectedIndex;
if (i == 2)
MessageBox.Show("3");
}


http://barnamenevis.org/forum/attachment.php?attachmentid=53211&stc=1&d=1280309281

salehvasaleh
چهارشنبه 06 مرداد 1389, 14:07 عصر
یه مثال ساده :



private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int i = listBox1.SelectedIndex;
if (i == 2)
MessageBox.Show("3");
}


http://barnamenevis.org/forum/attachment.php?attachmentid=53211&stc=1&d=1280309281
ممنون ولی بازم اون چیزی که من می خوام نیست کسی راه حلی دگه ای ندره؟

mmd2009
چهارشنبه 06 مرداد 1389, 14:38 عصر
میشه بگید دقیقا چی می خواهید؟

العا درست اون چیزی رو که خواستید دوستان پاسخ دادن.

اگر میشه یک بار دیگه سوالتون رو به روش دگه ای مطرح کنید.


البته به نظر من شما نیومدی متغیر i رو سراسری تعریف بکنی و فقط تو رویداد SelectedIndexChanged اومدی نوشتیش واسه همین نمیتونی تو جاهای دیگه ازش استفاده بکنی.

hi.alir
چهارشنبه 06 مرداد 1389, 14:46 عصر
شاید این جواب بده.


if (listBox1.SelectedItem > -1)
{
pictureBox1.Visible = true;
}

salehvasaleh
چهارشنبه 06 مرداد 1389, 14:48 عصر
میشه بگید دقیقا چی می خواهید؟

العا درست اون چیزی رو که خواستید دوستان پاسخ دادن.

اگر میشه یک بار دیگه سوالتون رو به روش دگه ای مطرح کنید.


البته به نظر من شما نیومدی متغیر i رو سراسری تعریف بکنی و فقط تو رویداد SelectedIndexChanged اومدی نوشتیش واسه همین نمیتونی تو جاهای دیگه ازش استفاده بکنی.

ببینید من توی فرمم یک لیست باکس دارم + یک پیکچر باکس + دکمه حذف آیتم از لیست باکس :
با کلیک بر روی آیتم های لیست باکس که آدرس عکس هستند اون عکس درون پیکچر باکس نشون داده می شه اما مشکلم انه وقتی که دکمه حذف آیم لیست باکس رو می زنم چون در حال نمایش توی پیکچر باکس هست برنامه دچار مشکل می شه واسه همین از کد ویزیبل خواستم استفاده کنم که فکر کنم اشتباه می کردم شما چه راه حلی دارید؟

hi.alir
چهارشنبه 06 مرداد 1389, 16:09 عصر
دکمه ی حذف ایتم از لیست باکس گزاشتید یا حذف عکس :متفکر:
کد اون دکمه چیه؟
واسه حذف ایتم از لیست باکس که مشکلی نباید پیش بیاد.
اگه درست یادم مونده باشه ( VS ندارم ):

listbox1.Items.remove(index)
به جای index می تونید از listbox1.selecteditem استفاده کنید.
البته اینجا یه باگ داره، اگر هیچ ایتمی انتخاب نشده باشه خطا میده، که واسه این مشکل هم می تونید از کدی که تو پست قبل گزاشتم استفاده کنید.

salehvasaleh
چهارشنبه 06 مرداد 1389, 21:22 عصر
دکمه ی حذف ایتم از لیست باکس گزاشتید یا حذف عکس :متفکر:
کد اون دکمه چیه؟
واسه حذف ایتم از لیست باکس که مشکلی نباید پیش بیاد.
اگه درست یادم مونده باشه ( VS ندارم ):

به جای index می تونید از listbox1.selecteditem استفاده کنید.
البته اینجا یه باگ داره، اگر هیچ ایتمی انتخاب نشده باشه خطا میده، که واسه این مشکل هم می تونید از کدی که تو پست قبل گزاشتم استفاده کنید.
کد حذف از لیست:



private void button5_Click_1(object sender, EventArgs e)
{
pictureBox1.Visible = false;
listBox1.Items.Remove(listBox1.SelectedItem);
}


کد حذف فیزیکی از هارد:


System.IO.File.Delete(listBox1.SelectedItem.ToStri ng());
listBox1.Items.Remove(listBox1.SelectedItem);
listBox1.Refresh();

ucnazard
چهارشنبه 06 مرداد 1389, 21:35 عصر
چون فایل انتخاب شده تون در حال نمایش توسط pictureBoxاست حذف از هارد رو انجام نمیده
من خودم الان همین مشکل رو تو پروژم دارم خاستم با nullکردن تصویر پیکچرباکس حذفش کنم بازم جواب نداد
امیدوارم جوابش پیدا شه تو این تاپیک

salehvasaleh
پنج شنبه 07 مرداد 1389, 19:48 عصر
کسی از دوستان راه حلی پیدا نکرد؟