PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : نکته ای در باب GridView



آبجی
14th February 2010, 05:11 PM
در روال DataBound کنترل GridView در ASP.NET 2.0، در صورتی که بخواید وضعیت ردیف یکی از ردیف های GridView رو برای حالت Edit بررسی کنید، میشه به شکل زیر عمل کرد:

If (e.Row.RowType = DataControlRowType.DataRow) And (e.Row.RowState = DataControlRowState.Edit) Then

در کد فوق گفته شده که اعمالی که انجام میشه بر روی ردیف هایی هست که حاوی داده هستند و در مد ویرایش قرار دارند.
مشکلی که وجود داره اینه که در ردیف های فرد (که در دات نت به عنوان ردیف های Alternate شناخته میشن)، DataControlRowState مقدار Edit رو نداره!
در نتیجه دستور فوق بر روی ردیف های فرد تاثیری نخواهد داشت و تنها ردیف های زوج تحت تاثیر دستورات قرار خواهند گرفت…
این مشکلی بود که کمی وقت من رو برای بر طرف کردن اون گرفت.
برای حل این مشکل، من مقدار RowState رو به ازای هر ردیف چاپ کردم و دیدم که این خاصیت برای ردیف های Alternate، مقدار “Alternate, Edit” رو بر میگردونه!!!
پس دستور فوق رو به شکل ذیل تصحیح کردم:


If ((e.Row.RowType = DataControlRowType.DataRow) And (e.Row.RowState = DataControlRowState.Edit)) Or ((e.Row.RowType = DataControlRowType.DataRow) And (e.Row.RowState.ToString() = “Alternate, Edit”)) Then

از این نکته در تاپیک اعمال متداول با GridView در بخش ASP.NET سایت برنامه نویس استفاده کردم.

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد