PDA

View Full Version : یکی در میان کردن رنگ سطر های دیتا گرید ویو



reza97
سه شنبه 01 اسفند 1391, 11:03 صبح
سلام دوستان
چطور میشه رنگ سطر های دیتا گرید ویو رو یک در میان رنگش متفاوت باشه
تالار سرچ کردم برای سی شارپ بود اما برای گرید ویو تحت نت نتونستم پیدا کنم
و همچنین میخوام وقتی با موس روی سطر گرید ویو میریم رنگی بشه؟

ahmad156
سه شنبه 01 اسفند 1391, 11:35 صبح
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.alternatingrows tyle.aspx
http://stackoverflow.com/questions/5006684/hovering-over-gridview-row-overrides-alternating-row-style
http://barnamenevis.org/showthread.php?248171-%DB%8C%DA%A9%DB%8C-%D8%AF%D8%B1-%D9%85%DB%8C%D8%A7%D9%86-%DA%A9%D8%B1%D8%AF%D9%86-%D8%B1%D9%86%DA%AF-%D8%B3%D8%B7%D8%B1-%D9%87%D8%A7%DB%8C-%D8%AF%DB%8C%D8%AA%D8%A7-%DA%AF%D8%B1%DB%8C%D8%AF-%D9%88%DB%8C%D9%88
http://barnamenevis.org/showthread.php?251585-%DB%8C%DA%A9%DB%8C-%D8%AF%D8%B1-%D9%85%DB%8C%D8%A7%D9%86-%DA%A9%D8%B1%D8%AF%D9%86-%D8%B1%D9%86%DA%AF-datagridview

aliblue
سه شنبه 01 اسفند 1391, 13:02 عصر
خیلی ساده با تنظیم خاصیت AlternateRowStyle میتونید رنگ و فونت و ... را تغییر دهید.

masud8002k
سه شنبه 01 اسفند 1391, 21:55 عصر
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.alternatingrows tyle.aspx
http://stackoverflow.com/questions/5006684/hovering-over-gridview-row-overrides-alternating-row-style
http://barnamenevis.org/showthread.php?248171-%DB%8C%DA%A9%DB%8C-%D8%AF%D8%B1-%D9%85%DB%8C%D8%A7%D9%86-%DA%A9%D8%B1%D8%AF%D9%86-%D8%B1%D9%86%DA%AF-%D8%B3%D8%B7%D8%B1-%D9%87%D8%A7%DB%8C-%D8%AF%DB%8C%D8%AA%D8%A7-%DA%AF%D8%B1%DB%8C%D8%AF-%D9%88%DB%8C%D9%88
http://barnamenevis.org/showthread.php?251585-%DB%8C%DA%A9%DB%8C-%D8%AF%D8%B1-%D9%85%DB%8C%D8%A7%D9%86-%DA%A9%D8%B1%D8%AF%D9%86-%D8%B1%D9%86%DA%AF-datagridview
الببته این ها برای تحت ویندوز هستند؟فکر کنم تحت وب چواب نمیدن؟

asadi.hasan
سه شنبه 01 اسفند 1391, 22:05 عصر
بفرمایید:
<AlternatingRowStyle BackColor="#99CCFF" />

zerocool151
سه شنبه 01 اسفند 1391, 23:36 عصر
بفرمایید:
<AlternatingRowStyle BackColor="#99CCFF" />

بقیشم میشه بگید؟
فم نمیکنم کامل باشه

reza97
چهارشنبه 02 اسفند 1391, 08:47 صبح
بقیشم میشه بگید؟
فم نمیکنم کامل باشه
چرا همینو بنویسی کافیه، از قسمت proprties برو همینو انجام بده حل شه
با تشکر از دوستمون که ما رو راهنمایی کردن

hamed847
جمعه 10 آذر 1396, 20:23 عصر
استیل هر سلول در کنترل DataGridView به صورت وراثتی تعیین میشود به عبارت دیگر در هر کنترل DataGridView میتوانید یک استیل کلی مشخص کنید به این ترتیب این استیل به تمام سلولها به ارث می رسد وتمام سلولهای این کنترل دارای همین استیل خواهند بود مگر اینکه بصورت مشخص آنرا تغیید بدیم .دراین کنترل تمام مجموعه های عضو نیز دارای خاصیتی به همین صورت هستند
مثال) اگر استیل پیش فرض یک DataGridView را برابر با استیل X قرار بدیم تمام سلولهای این کنترل دارای استیل X خواهند بود.

اما اگر استیل پیش فرض یک ستون از سلولها در DataGridView را برابر با استیل Z قرار بدیم تمام سلولهایی که درآن ستون قرار دارند دارای استیل Z خواهند شد
استیل هر سلول به وسیله ی شی ای از نوع DataGridViewCellStyle تعیین میشود. بنابراین برای شروع شی ای از نوع این کلاس ایجاد کرده و خاصیت Alignment آن را برابر با MiddleRight قراردهیم .
//bakhshe property alignment
DataGridViewCellStyle objalignRightCellStyle =new DataGridViewCellStyle(); 👈
ObjalignRightCellStyle.Alignment= DataGridViewContentAlignment.MiddleRight; 👈

قبل از هر چیز بهتراست جدول اطلاعات برنامه را به گونه ای تغییر بدیم که ردیفها به صورت یکی در میان رنگ متفاوتی داشته باشند ، به این ترتیب خواندن اطلاعات ساده تر میشود برای این کار کافی است رنگ ردیفهای فرد را به صورت قبلی قرار داده و رنگ ردیف های زوج را تغییر بدیم . برای ایجاد تغییر در ردیفهای فرد کافی است شی ای از نوع DataGridViewCellStyle ایجاد کرده و بعد از تنظیم قسمتهای مورد نظردر این شیء آن را در خاصیت AlternatingRowsDefaultCellStyle قرار بدیم.
در اینجا نیز با استفاده از این روش رنگ ردیفهای زوج را به صورت whitesmoke در می آوریم :

//bakhshe tanzim alternating row style
DataGridViewCellStyle objAlternatingCellStyle =new DataGridViewCellStyle(); 👈
ObjAlternatingCellStyle.BackColor=Color.WhiteSmoke ; 👈
DataGridView.AlternatingRowsDefaultCellStyle= objAlternatingCellStyle; 👈

در مرحله ی بعد نیز با ایجاد یک شیء جدید از کلاس DataGridViewCellStyle آن را به گونه ای تنظیم می کنیم تا بتواند اعداد مالی را با قالب صحیح و نیز از راست به چپ نمایش دهد

//tanzim bakhshe currency cells style
DataGridViewCellStyle objCurrencyCellStyle=new DataGridViewCellStyle(); 👈
ObjcurrencyCellStyle.Format="c"; 👈
ObjCurrencyCellStyle.Alignment=DataGridViewContent Alignment.MiddleRight; 👈

سپس باید عنوان ستون price را به نامی با معنی تر تغییر داده و دو استیلی که در مرحله ی قبل ایجاد کرده بودیم را یکی برای نمایش اعداد مالی و دیگری را برای تنظیم نحوه ی نمایش تیتر یکی از ستونها به سلولهای مورد نظر نسبت میدیم

DataGridView.Columns[ "Price"].HeaderCell.Value="Retail Price"; 👈

DataGridView.Columns["Price"].HeaderC
ell.Style=objAlignRightCellStyle; 👈

DataGridView.Columns[ "Price"].DefaultCellStyle.Value=objCurrencyCellStyle; 👈

در انتها نیز عنوان دیگر ستونها را با استفاده از خاصیت HeaderText و HeaderText.Value به نام با معنی تری تغییر خواهیم داد همچنین برای اینکه عنوان مثلا کتابها در برنامه کتابخانه به سادگی قابل خواندن باشد میتوانیم طول سلولها را افزایش دهیم مانند کد ذیل :

//change column name and style
DataGridView.Columns[0].HeaderText="Name "; 👈
DataGridView.Columns[1].HeaderText="Family"; 👈
DataGridView.Columns[2].HeaderText="Book Title"; 👈
DataGridView .Columns[2].width=225; 👈