PDA

View Full Version : سوال: ریختن اطلاعات در Textbox های مربوط با کلیک روی سطر Grid



Vahid_SH
شنبه 21 آذر 1388, 09:27 صبح
با سلام
اگر بخواهیم اطلاعاتی که در جدول دارم وفیلد نام که در دیتا گرید ما قرار گرفته با کلیک کردن روی فرامین در tempelet همه اطلاعات یک رکوردجدول درtextbox های http://www.pcnet.ir/images/untitlhfh.jpg زیر دیتا گریدنمایش دهد

raziee
شنبه 21 آذر 1388, 10:29 صبح
اگه یه جستجو کنید بد نیست!!!

در رویداد SelectedIndexChanged به این روش کد نویسی کن:
فرضا در این گرید یک لیبل به نام lblName داری این کد رو مینویسی:
view sourceprint?1.Label name = (Label)GridView1.SelectedRow.FindControl("lblName" );
txtName.Text = name.Text;
و یا اگه از Template استفاده نکردی میتونی:
view sourceprint?1.TextBox1.text = GridView1.SelectedRow.Cells[0].Text;
که شماره ای که در Cell قرار میگیره شماره ستون هست.

Vahid_SH
شنبه 21 آذر 1388, 13:06 عصر
text box ها خارج از دیتا گرید است

kohyar
شنبه 21 آذر 1388, 14:40 عصر
دوست عزيز من هميشه از همين روش استفاده مي كنم يعني گريد در زير گريد ليست فيلد هاي مربوط به گريد رو مي زارم و بعد در انتهاي سطر گريد يك فيلد از نوع Template field مي زارم و بعد در قسمت Edit Item Template يك Image Button مي زارم بعد در قسمت Edit databindings و گزينه CommandArquments عبارت bind('نام فيلد ايندكس جدول') رو مي نويسم
تا اينجا اگر كاربر روي اين دكمه در پايان سطر گريد كليك كنه مقدار اون فيلد مثلا ID به داخل پروسيجر Command پاس داده ميشه
حالا شما مي تونيد در داخل پروسيجر با استفاده از كد



int id = Int32.Parse(e.CommandArgument.ToString());



حالا شما مي تونيد با استفاده از آي دي اون ركورد و يك جستجو در بانك مقادير فيلدهاي ركورد را پيدا كرده و در textbox هاي مربوطه نمايش بدهيد و طرف به روز رساني رو انجام داده و در داخل بانك ذخيره كنيد

raziee
شنبه 21 آذر 1388, 15:37 عصر
text box ها خارج از دیتا گرید است
خوب باشه:متفکر:

Vahid_SH
دوشنبه 23 آذر 1388, 10:16 صبح
خوب باشه:متفکر:
اگر می شود یک مثال را به صورت کامل برای من توضیح دهید
با تشکر

Vahid_SH
سه شنبه 24 آذر 1388, 11:21 صبح
دوست عزيز من هميشه از همين روش استفاده مي كنم يعني گريد در زير گريد ليست فيلد هاي مربوط به گريد رو مي زارم و بعد در انتهاي سطر گريد يك فيلد از نوع Template field مي زارم و بعد در قسمت Edit Item Template يك Image Button مي زارم بعد در قسمت Edit databindings و گزينه CommandArquments عبارت bind('نام فيلد ايندكس جدول') رو مي نويسم
تا اينجا اگر كاربر روي اين دكمه در پايان سطر گريد كليك كنه مقدار اون فيلد مثلا ID به داخل پروسيجر Command پاس داده ميشه
حالا شما مي تونيد در داخل پروسيجر با استفاده از كد


int id = Int32.Parse(e.CommandArgument.ToString());




حالا شما مي تونيد با استفاده از آي دي اون ركورد و يك جستجو در بانك مقادير فيلدهاي ركورد را پيدا كرده و در textbox هاي مربوطه نمايش بدهيد و طرف به روز رساني رو انجام داده و در داخل بانك ذخيره كنيد

کمی بیشتر توضیح دهید

raziee
سه شنبه 24 آذر 1388, 13:05 عصر
تاپیک های زیر رو ببینید. امیدوارم که مفید باشه.
http://barnamenevis.org/forum/showthread.php?t=193982
http://barnamenevis.org/forum/showthread.php?t=191493