PDA

View Full Version : نوشتن کد edit و delete



black_shadow
پنج شنبه 24 دی 1394, 18:25 عصر
سلام باز ببخشین که مزاحم شدم

من تو این کد چنتا مشکل دارم
private void btnEdite_Click(object sender, EventArgs e)
{

string select;
select = lstshow.Items[lstshow.SelectedIndex].ToString();
if (select == txtId.Text)
{
if (txtedite.Text=="")
{
btnEdite.Enabled = false;
}
lstshow.Items.Remove(strname[0]);
strname[0] = txtedite.Text;
lstshow.Items.Add(strname[0]);
}
اول از همه تو شرط گفتم که اگر تکست باکس خالی باشه دکمه غیر فعال بشه که نمیشه
مشکل دوم اینه که
من میخوام مثلان محتویات
strname[0]
رو اول تو لیست باکس پاک کنم و به جای اون هرچی که کاربر به
txtedite.text
میده رو به ذارم به جاش
همه اینا انجام میشه ولی مشکل اینه که میاد ورودی جدیدو تو خط جدید میذاره من اینو نمیخوام
من میخام که تو همون خط اول ورودی جدید بمونه

black_shadow
پنج شنبه 24 دی 1394, 19:04 عصر
درست شد اینم کد
private void btnEdite_Click(object sender, EventArgs e)
{

// string select_edite;
// select_edite = lstshow.Items[lstshow.SelectedIndex].ToString();

lstshow.Items[lstshow.SelectedIndex] = txtedite.Text;
// if (select_edite == txtId.Text)
// {
// if (txtedite.Text=="")
// {
// btnEdite.Enabled = false;
// }
// lstshow.Items.Remove(strname[0]);
// strname[0] = txtedite.Text;
// lstshow.Items.Add(strname[0]);
// }
}

چرا کد اولی درست کار نمیکرد؟
چرا دکمه فالس نمیشد

amin8505
جمعه 25 دی 1394, 09:55 صبح
علتش اینه که متد add همیشه اطلاعات رو به آخر لیست اضافه می کنه.
اگه می خواهی اطلاعات رو در index خاصی قرار بدی از دستور insert استفاده کن.
اما در مورد فالس شدن دکمه ، شرط رو این شکلی بنویس شاید درست بشه
txtedite.Text.Trim()==""