PDA

View Full Version : سوال: کمک در checkbox



programmer_162
دوشنبه 17 تیر 1387, 10:59 صبح
سلام ، من حدود 15 تا چک باکس دارم که می خوام با انتخاب هر کدوم از اونا نتیجه توی یک گریدویو نمایش داده بشه.

naeeme
دوشنبه 17 تیر 1387, 11:10 صبح
:متفکر:
checkbox یه property داره به اسم AutoPostBack که در حالت عادی مقدار اون false هست. اگه برابر true قرار بدی با هر بار انتخاب checkbox صفحه postback میشه و می تونی براش کد بنویسی.

بهترین حالت هم استفاده از آژاکس هست که دیگه postback نداشته باشی.

----------
یه ذره مسئله رو هم بازتر کنی( مثلا این تعداد چک باکس چقدر مهمه!) بهتره.

programmer_162
دوشنبه 17 تیر 1387, 14:28 عصر
می خوام با انتخاب یک یا همه این چک باکس ها یک مرتبه select داشته باشم که اگه یکی یا دو تا یا ... انتخاب کرد اونها رو از دیتا بیس نشونم بده

naeeme
دوشنبه 17 تیر 1387, 14:43 عصر
خوب! اگه کاملا توضیح بدین کجای این مسئله رو مشکل دارین، زودتر و بهتر به جواب می رسین.
الان من نمیدونم توی تولید sql string به صورت داینامیک مشکل دارین یا توی بررسی انتخاب شدن چک باکسها یا در جای دیگه!
یا امکان داره اصلا مسئله مورد نظر شما رو من متوجه نشده باشم!!!

amirjalili
دوشنبه 17 تیر 1387, 15:01 عصر
فرض کن checkbox ها را تیک زدی.. میخوای با زدن یک دکمه مثلا مقادیر انتخاب شده داخل gridview به نحو خاصی update بشه و تغییر کنه:





کد نمونه:

protected void Button1_Click(object sender, EventArgs e)
{

bool[] ch = new bool[GridView1.Rows.Count];
string[] txt = new string[GridView1.Rows.Count];


for(int i=0;i<GridView1.Rows.Count;i++){


ch[i]= ((CheckBox)GridView1.Rows[i].Cells[4].Controls[1]).Checked;

txt[i] = ((Label)GridView1.Rows[i].Cells[6].Controls[1]).Text;

SqlConnection objconnection = new SqlConnection(@"Data Source=java\sqlexpress;Initial Catalog=test;Integrated Security=True");
SqlCommand objcommand = new SqlCommand();
objcommand.Connection = objconnection;

objcommand.CommandText = ("UPDATE test SET testname=@testname WHERE testid=@ltestid ");
objcommand.Parameters.AddWithValue("@testname", ch[i]);
objcommand.Parameters.AddWithValue("@testid",txt[i] );


objconnection.Open();
objcommand.ExecuteNonQuery();
objconnection.Close();




}


}