PDA

View Full Version : سوال: دریافت اطلاعات گزینه چک شده RadioButtonList



L_eskandary
یک شنبه 29 شهریور 1388, 22:11 عصر
با سلام و تبریک عید خدمت همه دوستان .
امیدوارم طاعات و عبادات همه مورد قبول درگاه حق تعالی قرار گرفته باشه .
دوستان من تعدادی سوال چهار گزینه ای دارم که از پایگاه داده ام به داخل gridview و یا datalist بایند کرده ام . تو grid من از template جهت اضافه کردن Radiobuttonlist استفاده کردم . حالا مشکلم اینه که نمی دونم چطوری Radiobutton انتخاب شده رو بدست بیارم تا بتونم جواب سوالم رو تو پایگاه داده ذخیره کنم .( در مورد datalist هم همین مشکل رو دارم ) ؟؟؟
راه حل دیگه ای هم بغیر از استفاده از کنترلهای ذکر شده بود لطفا دریغ نفرمایید .
با تشکر

Beyondsoft
یک شنبه 29 شهریور 1388, 23:44 عصر
شما اگر از یک radiobuttonlist استفاده کنید می توانید:
RadioButtonList1.SelectedValue
را استفاده کنید.

اگر از datalist می خواهید استفاده کنید :
در رخدادی به نام :itemcommand از دستور زیر استفاده کنید:


string myId = dlstCategory.DataKeys[e.Item.ItemIndex].ToString()

L_eskandary
دوشنبه 30 شهریور 1388, 18:51 عصر
دوست عزیز BeyondSoft سلام

من می دونم با استفاده از خاصیت selectedValue میشه گزینه ی چک شده رو مشخص کرد مشکل من اینه که وقتی تو Event مربوط به Click باتن می خوام این مقدار رو به سوال مورد نظر بایند کنم ، RadioButtonList رو نمی شناسه !
برا چند تا سوال که قرار هستش پاسخ شون انتخاب شه و بعدش باتن مربوط به ذخیره ، جواب همه سوال ها رو یکجا بگیره و تو پایگاهم ذخیره کنه راه حلی به ذهن دوستان می رسه ؟
ممنون میشم راهنمایی کنید .

Exception
دوشنبه 30 شهریور 1388, 19:23 عصر
یه چیزی شبیه این:

foreach (GridViewRow row in GridView1.Rows)
{
RadioButtonList rbl = row.FindControl("RadioButtonList1") as RadioButtonList;
...
}
بقیه اش مشخصه دیگه. اون rbl میشه همون RadioButtonList توی هر سطر.

nazaninam
پنج شنبه 02 مهر 1388, 19:10 عصر
سلام
وقتی شما یک کنترل را در کنترل دیگر قرار میدهید دیگر با همان آیدی قابل شناسایی نیست باید از متد FindControl استفاده کنید :
ابتدا GridView را سطر به سطر بخوانید :



foreach(GridviewRow in GridView1.Rows)
{


}




اکنون در هر سطر کنترل RadioButtnList را پیدا کرده ، گزینه انتخاب شده را پیدا می کنیم و سپس توسط یک دستور Insert داخل بانک ذخیره می کنیم :




foreach(GridviewRow myrow in GridView1.Rows)
{

RadioButtonList rbl=(RadioButtonList)myrow.cells[0].FindControl("RadioButtonList1");
String SelectedValue=rbl.SelectedValue;
//Insert Into Database
}



به همین سادگی