View Full Version : کنترل رویداد CellClick در GridView
oldboy
چهارشنبه 09 تیر 1389, 10:20 صبح
سلام دوستان.
چطور میشه رویداد کلیک روی یه سلول GridView رو کنترل کرد؟
منظورم یه چیز مثل CellClick توی DataGridView تو Windows Application.
raziee
چهارشنبه 09 تیر 1389, 11:26 صبح
سلام دوستان.
چطور میشه رویداد کلیک روی یه سلول GridView رو کنترل کرد؟
منظورم یه چیز مثل CellClick توی DataGridView تو Windows Application.
در ASPX در گریدویو باید یک Button برای Select و یا امر خاص (مثلDelete) گذاشت.
GridView رویداد هایی مثل:
RowCommand
RowDeleted
RowDeleting
,........
داره
که هر کدوم برای کار خاصی استفاده میشه.
Vahid_moghaddam
چهارشنبه 09 تیر 1389, 11:36 صبح
در ادامه،
می تونید با استفاده از تابع onclick در سمت کلاینت و Ajax این عمل رو شبیه سازی کنید.
نوع روش بستگی داره به هدف شما.
oldboy
چهارشنبه 09 تیر 1389, 12:49 عصر
من تصمیم گرفتم با استفاده از رویداد onclick و جاوااسکریپت انجامش بدم و تا حدودی انجامش دادم ولی از اونجایی که تازه کارم نمی دونم وقتی فرم رو submit می کنم چه رویدادی اتفاق می افته.
این الگوریتم رو از اینترنت پیدا کردم.
الگوریتم به این صورته که یه فیلد نامرئی تعریف کردم و تو رویداد onclick سلول مورد نظر تابع CellClick رو که با استفاده از javascript تعریف کردم، اضافه کردم. این تابع مقدار فیلد نامرئی مورد نظر رو به یه مقداری ست میکنه که با استفاده از اون بتونم تشخیص بدم که CellClick اتفاق افتاده. تو آخر تابع، فرم رو Submit می کنیم. اونجا گفته که وقتی کلیک می کنیم یه post back اتفاق می افته که اونجا به این مقدار فیلد نامرئی نگاه می کنیم و تشخیص می دیم که این رویداد اتفاق افتاده. ولی چه جوریشو نگفته. یعنی نمی دونم وقتی post back اتفاق می افته چی میشه.
Vahid_moghaddam
چهارشنبه 09 تیر 1389, 13:03 عصر
من تصمیم گرفتم با استفاده از رویداد onclick و جاوااسکریپت انجامش بدم و تا حدودی انجامش دادم ولی از اونجایی که تازه کارم نمی دونم وقتی فرم رو submit می کنم چه رویدادی اتفاق می افته.
این الگوریتم رو از اینترنت پیدا کردم.
الگوریتم به این صورته که یه فیلد نامرئی تعریف کردم و تو رویداد onclick سلول مورد نظر تابع CellClick رو که با استفاده از javascript تعریف کردم، اضافه کردم. این تابع مقدار فیلد نامرئی مورد نظر رو به یه مقداری ست میکنه که با استفاده از اون بتونم تشخیص بدم که CellClick اتفاق افتاده. تو آخر تابع، فرم رو Submit می کنیم. اونجا گفته که وقتی کلیک می کنیم یه post back اتفاق می افته که اونجا به این مقدار فیلد نامرئی نگاه می کنیم و تشخیص می دیم که این رویداد اتفاق افتاده. ولی چه جوریشو نگفته. یعنی نمی دونم وقتی post back اتفاق می افته چی میشه.
اگه از کنترل html استفاده کردید، به خاصیت name مقدار بدید، مثلا hidden و در page_load به شکل زیر ازش استفاده کنید:
string value = Request.Form["hidden"];
oldboy
چهارشنبه 09 تیر 1389, 13:14 عصر
به مقدار فیلد می تونم دسترسی پیدا کنم ولی نمی دونم وقتی می نویسم
frmAdmin.submit();
چه اتفاقی می افته.
یعنی کجا باید مقدار فیلد رو بازیابی و بررسی کنم.
Vahid_moghaddam
چهارشنبه 09 تیر 1389, 13:24 عصر
به مقدار فیلد می تونم دسترسی پیدا کنم ولی نمی دونم وقتی می نویسم
frmAdmin.submit();چه اتفاقی می افته.
یعنی کجا باید مقدار فیلد رو بازیابی و بررسی کنم.
شما دارید دستور submit رو اجرا می کنید. post back اتفاق می افته. در رویداد page_load در سمت سرور می تونید مقدار رو بازیابی کنید.
اگه شما نمی خواید post back کامل داشته باشید، به جای استفاده از submit باید به روشی ajax رو پیاده سازی کنید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.