PDA

View Full Version : سوال: اجرای selectedindexchanged در pageload



mansoure_p
چهارشنبه 02 دی 1394, 12:59 عصر
سلام
من دو تا drop dwon list دارم، که یکی گروه رو نشون میده دیگری زیر گروه های مربوط به اون گروه رو نمایش میده. مشخصه که این کار در رویداد selectedindexchange اولی انجام میشه. مشکل اینجاست که من وقتی روی ویرایش یک آیتم کلیک میکنم میخوام گروه و زیر گروه اون آیتم نمایش داده بشه
اما چون زیر گروه زمانی انتخاب میشه که یک گروه انتخاب شده باشه در لود صفحه فقط گروه مربوط به اون آیتم که از دیتابیس خونده میشه نمایش داده میشه.
چطوری زیر گروه رو هم نمایش بدم؟
5 روز هست که دارم روش کار میکنم ولی به نتیجه نرسیدم:ناراحت::ناراحت::گریه:

mansoure_p
پنج شنبه 03 دی 1394, 12:31 عصر
یعنی هیچ کس نیست جواب سوال رو بدونه!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!

پیام حیاتی
پنج شنبه 03 دی 1394, 13:18 عصر
سلام
در صفحه ویرایشتون Drop گروه را به صورت پیشفرض بر روی یکی از آیتم های موجود قرار بدید تا زیرگروه های مربوطه هم نمایش داده شود.

mansoure_p
پنج شنبه 03 دی 1394, 14:39 عصر
دوست عزیز، میخوام دراپ گروهی انتخاب بشه که روی ویرایش سند مربوطش کلیک کرده باشم نه اینکه به طور پیش فرض یک گروه نمایش داده بشه

mansoure_p
پنج شنبه 03 دی 1394, 15:00 عصر
137637137638

aminmousavi
پنج شنبه 03 دی 1394, 23:57 عصر
سلام دوست عزیز . کدهای درون SelectIndexChanged رو درون یک مند قرار بدید مثلا به اسم SetCombo()
بعد جای کل کد درون SelectIndexChanged متد SetCombo رو فراخوانی کنید .
در ویرایش هم :
اول مقدار Combo اولی رو مشخص کنید ، و سپس متد SetCombo رو اجرا کنید و در آخر مقدار Combo دوم رو مشخص کنید .

mansoure_p
شنبه 05 دی 1394, 09:25 صبح
سلام ممنون از وقتی که گذاشتید.منطقی که میگید درسته، ولی الان اینجا کار نمیکنه.

foreach (ListItem item in ddlDocGroupTitle.Items)
{
ddlDocGroupTitle.SelectedValue = drDocuments["ParentID"].ToString();

if (item.Value == ddlDocGroupTitle.SelectedValue )
{
item.Selected = true;
ddlDocGroupTitle.SelectedIndex = i;
SetddlDocGroupTitle();

ddlDocSubGroupTitle.SelectedValue = drDocuments["DocGroupID"].ToString();

break;
}
else
item.Selected = false;
i++;

mansoure_p
شنبه 05 دی 1394, 09:41 صبح
دو تا جدول دارم با ابن فیلدها.
جدول اول: DocGroupID,ParentID,DocGroupTitle,DocSubGroupTitle
جدول دوم:ِDocID,DocGroupID,DocTitle,DocPubYear,DocU rl
اینم sp هست که groupdropdown بهش متصل هست.
137668
توی جدول دوم، GroupID سطری ذخیره میشه که که parentID اون null نباشه.parentID آی دی گروه،ِDocGroupID آی دی زیرگروه.
اینم اون یکی sp.
137669

137671

mansoure_p
شنبه 05 دی 1394, 10:20 صبح
سلام،ممنونم.اون مشکلم حل شد.فقط اینکه وقتی روی Edit یک آیتم کلیک میکنم زیرگروه رو نشون نمیده، بعد که میام بیرون روی Edit یک آیتم دیگه کلیک میکنم همه چیز درست میشه، منظورم اینه که تو اولین لود، نشون نمیده.
حلقه foreach رو داخل ispostback قرار دادم ولی اتفاقی نیفتاد
البته یک خط کد دیگه هم اضافه کردم.میذارم برای دوستان، تا اگر به همچین چیزی احتیاج داشتن،یه مرجع کامل براشون باشه.
txtDocUrl.Text = drDocuments["DocUrl"].ToString();

mansoure_p
یک شنبه 20 دی 1394, 12:45 عصر
سلام،ممنونم.اون مشکلم حل شد.فقط اینکه وقتی روی Edit یک آیتم کلیک میکنم زیرگروه رو نشون نمیده، بعد که میام بیرون روی Edit یک آیتم دیگه کلیک میکنم همه چیز درست میشه، منظورم اینه که تو اولین لود، نشون نمیده.
حلقه foreach رو داخل ispostback قرار دادم ولی اتفاقی نیفتاد
البته یک خط کد دیگه هم اضافه کردم.میذارم برای دوستان، تا اگر به همچین چیزی احتیاج داشتن،یه مرجع کامل براشون باشه.
txtDocUrl.Text = drDocuments["DocUrl"].ToString();

برای انکه تو اولین لود نشون بده یک خط کد خیلی ساده رو جا انداخته بودم.
ddlDocGroupTitle.DataBind(); باید داخل page load مینوشتم.