"> مرتب سازی در GridView

آموزش مرتب سازی اطلاعات در GridView

مرتب سازی در شبکه نمایش

میخواهیم متد مرتب سازی GridView را که در چندین برنامه ی اخیر از آن استفاده کرده ام را در این مقاله براتون بنویسم. در این مقاله که یکی از مشکلاتی خیلی از برنامه نویسان است میخواهیم با یک مقاله خیلی ساده و کاربری آن را حل کنیم.مرتب سازی GridView که میتواند اطلاعات یک دیتاگرید را براساس هرچه شما تعیین کنید انجام دهید مقاله ای ساده که در ادامه آن را برسی میکنیم.

اینجا دو عکس داریم که نشان دهنده ی شکل آن هستند. در تصویر اول , ستون اول (نام کاربری) به ترتیب صعودی مرتب سازی شده است. یک پیکان که به بالا اشاره میکند برای نشان دادن ترتیب ستون و ترتیب مرتب سازی وجود دارد.

مرتب سازی در شبکه نمایش

 

در تصویر دوم , ستون دوم (نام) به ترتیب نزولی مرتب سازی شده است. دوباره پیکانی نشان دهنده ی ترتیب ستون و مرتب سازی است. میتوانیم هر ستونی را با کلیک بر روی سر تیتر مرتب کنیم. میتوانیم با کلیک دوباره مرتب سازی را برگردانیم. پیکان ها نشان میدهند که کدام ستون مرتب شده است و به چه ترتیبی.

مرتب سازی در شبکه نمایش

کد برای ساخت این Grid در پروژه ی ضمیمه میباشد. در اینجا توضیح مختصری آورده شده است :

نشانه گذاری

اینجا یک نشانه گذاری برای GridView میباشد.

مرتب سازی در شبکه نمایش

هر ستون شامل یک قالب سرتیتر میباشد. قالب سر تیتر شامل یک دکمه ی لینک میباشد. یک دکمه ی لینک دکمه ای است که شبیه یک HyperLink میباشد. Font-Underline را بر روی False تنظیم میکنیم تا لینک ها شبیه متن خالی شوند اما این یک موضوع از اولویت است. مسئله ی مهم برای درک این است که سر تیتر همه ی ستون ها شبیه متن است اما در حقیقت یک دکمه میباشند. زمانی که دکمه کلیک میخورد , متد gridUsers_Sort فراخوانی میشود.

کد

ما ترتیب مرتب سازی را بر اساس شمارشی تعیین میکنیم.

مرتب سازی در شبکه نمایشزمانی که صفحه لود میشود , ما ترتیب مرتب سازی شبکه و ترتیب فعلی ستون را تعیین میکنیم. مقادیر در ViewState ذخیره میشوند.

مرتب سازی در شبکه نمایشهرگاه کارمان با پردازش تمام شد و صفحه آماده ی رندر شدن بود , ما ترتیب مرتب سازی و مرتب سازی ستون را در ViewState ذخیره میکنیم. سپس ما PositionGlyph() را فراخوانی میکنیم تا پیکان مرتب سازی را در سرتیتر شبکه قرار دهیم.

مرتب سازی در شبکه نمایش

PositionGlyph() یک کنترل تصویر میسازد. اگر ترتیب مرتب سازی صعودی بود کنترل تصویر , عکس پیکانی به سمت بالا خواهد بود. اگر ترتیب مرتب سازی نزولی بود کنترل تصویر , عکس پیکانی به سمت پایین خواهد بود. کنترل تصویر در ستونی که مرتب سازی میشود , اعمال میشود.

مرتب سازی در شبکه نمایشزمانی که کاربر بر روی دکمه ی لینک در بالای ستون کلیک میکند. متد gridUser_Sort() صدا زده میشود. با نگاه کردن به دکمه ی لینک CommandArgument مشخص میکنیم که کدام ستون مرتب شده است. ما ترتیب مرتب سازی کنونی و ترتیب ستون را به روز رسانی میکنیم و سپس شبکه را پیوند میزنیم.

مرتب سازی در شبکه نمایشهرگاه ما GridView  را پیوند زدیم , ابتدا داده را مرتب میکنیم.

مرتب سازی در شبکه نمایش

فراتر رفتن

اکثر این کد برای هر شبکه ای که شما بخواهید مرتب کنید مشابه است. متد های Page_Load() , Page_PreRender() , PositionGlyph() و grid_Sort() تغییری نمیکنند. میتوانید این متد ها را بار ها و بار ها cut و paste کنید. همه ی آنها میتوانند به کلاس پایه بروند.

داریوش فرخی

داریوش فرخی هستم از سال 92 شروع به یادگیری برنامه نویسی و از سال 93 در بخش برنامه نویسی و تولید محتوای سایت mspsoft.com مشغول هستم. فعالیتم نیز بیشتر در زمینه های برنامه نویسی با سی شارپ و asp.net بوده است. اوقات فراغتم را هم غالبا با تماشای فیلم یا بازی های کامپیوتری پر میکنم .

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

کدیشن ! مارکت پروژه های برنامه نویسی راه اندازی شدیه توکه پا بریم ببینم