PDA

View Full Version : sortکردن صعودی ونزولی ستونهای گرید دروب



c#_web
چهارشنبه 04 بهمن 1385, 11:34 صبح
همانطور که میدانید در windows app در دیتاگریدش در هرستون علامتی به شکل مثلث وجود داشت که اگر رویش کلیک میکردیم یکبارآن ستون را به صورت صعودی وباردیگر نزولی مرتب میکرد.
حالا من در برنامه ام که به وب است و با سی شارپ ، میخوام همین قابلیت sort دوطرفه را داشته باشم.
اما وقتی در دیتاگرید در ستون موردنظر sort expression را تعریف میکنم و در برنامه از آن استفاده میکنم روش sort کردن آن فقط به صورت صعودی یعنی از کم به زیاد است . ولی من هردو را نیاز دارم آیا برای اینکارراه حلی وجود دارد؟؟:متفکر:

Alireza_Salehi
چهارشنبه 04 بهمن 1385, 11:54 صبح
اگر از گریدویو استفاده کنی مثل همون دیتا گرید ویندوز عمل میکنه!

در ضمن در رویداد SortCommand دیتا گرید میشه تغییرات لازم رو اعمال کرد.

DataGrid.SortCommand Event (http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.datagrid.sortcommand.asp x)

Alireza_Salehi
چهارشنبه 04 بهمن 1385, 23:20 عصر
کنترل گریدویو نسخه جدید تر همون دیتا گرید هستش ، اگر در هر دوشون دقت کنی اکثر قابلیت هاشون مشابه هست ولی گرید ویو امکانات پیشفرض بیشتری داره مثلا کنترل دیتاگرید 4 نوع ستون داره ولی گرید ویو 7 نوع (البته هر چیزی به هر دو شون میشه اضافه کرد یا مثلا برای همین ستون ها در هر ردیف به ازای هر ستون میشه ظاهرش رو به دلخواه طراحی کرد ولی در دیتا گرید فقط به ازای هر ردیف این امکان وجود داره این هایی که گفتم با استفاده از امکانات ویژوال هست و نه با کد نویسی) ،

یک تفاوت مهمشون اینه که گریدویو 22 تا رویداد داره که در مقابل 16 تا رویداد دیتاگرید به برنامه نویس قابلیت انعطاف بیشتری می ده!
تفاوت مهم دیگه این که هنکام دستکاری این دو کنترل از طریق کد نویسی کارکردن با گرید ویو با توجه Property های بیشتر خیلی راحت تره!

و اغلب کنترل های جدید تر امکانات بیشتر ، باگ کمتر و کارایی بیشتری دارند.

وقتی امکانات آماده بیشتری وجود داره اصلا جالب نیست آدم وقتشو با کد نویسی و اسکریپت نویسی هدر بده!

c#_web
چهارشنبه 04 بهمن 1385, 23:48 عصر
از راهنمایی جامعتان خیلی ممنون. ولی من با دات نت 2003 کارمیکنم که کنترل گرید ویو نداره . حالا چه باید بکنم؟؟؟:متفکر:

Alireza_Salehi
چهارشنبه 04 بهمن 1385, 23:57 عصر
کنترل ها ی توسعه داده شده در اینترنت زیادن از اونها استفاده کن (البته آدرس هاشو ندارم ولی تو تالار بگردی پیدا میشه)

البته اگر نظر من رو بخوای 2005 آنقدر امکانات جدید در موارد مختلف داره که واقعا ارزش داره کوچ کنی به 2005!
این گرید ویو کمترین مزیتشه!!!!

c#_web
پنج شنبه 05 بهمن 1385, 13:05 عصر
اگه امکانش هست اسم اون کنترل ها ی توسعه داده شده را بهم بدین تا خودم در موردش جستجو کنم.:لبخندساده:

Alireza_Salehi
پنج شنبه 05 بهمن 1385, 14:30 عصر
1- Extend the ASP.NET DataGrid with Client-side Behaviors (http://msdn.microsoft.com/msdnmag/issues/04/01/CuttingEdge/default.aspx) (این لینک در باره مرتب سازی هم مطلب داره)

2- DataGridGirl (http://www.datagridgirl.com/articles.aspx) کلی مطلب در مورد توسعه دیتا گرید (و صد البته مرتب سازی)

3- ASP.NET DataGrid Column Sorting
(http://www.dotnetjunkies.com/Tutorial/E169C6D4-D335-4D2B-AE3F-918EE3161815.dcik)
در ضمن شرکت های زیادی هستند که کنترل های بسیار پیشرفته ای برای ASP.NET طراحی کرده اند که با یه کمی جستجو پیدا میشه (مورد خاصی خاطرم نیست ولی زیاد دیدم)

azam2005
پنج شنبه 24 شهریور 1390, 22:19 عصر
همانطور که میدانید در windows app در دیتاگریدش در هرستون علامتی به شکل مثلث وجود داشت که اگر رویش کلیک میکردیم یکبارآن ستون را به صورت صعودی وباردیگر نزولی مرتب میکرد.
حالا من در برنامه ام که به وب است و با سی شارپ ، میخوام همین قابلیت sort دوطرفه را داشته باشم.
اما وقتی در دیتاگرید در ستون موردنظر sort expression را تعریف میکنم و در برنامه از آن استفاده میکنم روش sort کردن آن فقط به صورت صعودی یعنی از کم به زیاد است . ولی من هردو را نیاز دارم آیا برای اینکارراه حلی وجود دارد؟؟:متفکر:

لطفا در صورتی که پاسخ سوال خود را پیدا کردید راه حلش را اینجا بگذارید منم مشکل شما را دارم