PDA

View Full Version : حذف اولین ستون و زنگی کردن گرید در سی شارپ



Fastdesign
چهارشنبه 03 آبان 1391, 21:58 عصر
با سلام

آیا میشه مثل این تصویر ستونی که ستاره داره رو حذف کرد . منظورم اولین ستون است.
94310
یعنی اون ستونی که تو سی شارپ ستاره داره حذف بشه یعنی مثل تصویر پاینی نباشه
94311

بعدش نمونه کدی وجود داره که بشه رنگ ردیف های گرید را یک در میون رنگی کرد

با تشکر

nice_boy_a
چهارشنبه 03 آبان 1391, 22:18 عصر
سلام
بله میشه
کافیه Enable Adding و Enable Editing و Enable Deleting رو false کنی
واسه رنگی کردن ردیف ها خصوصیت AlternatingRowsDefaultCellStyle رو باید تنظیم کنی

Fastdesign
چهارشنبه 03 آبان 1391, 22:35 عصر
دوست من باز false کردن این گزینه ها بازهم این ستون است . من می خوام مثل تصویر بالا اصلا ستون نباشه.

با تشکر

aslan
چهارشنبه 03 آبان 1391, 23:34 عصر
dgv1.RowHeadersVisible = false

Y_Safaiee
چهارشنبه 03 آبان 1391, 23:35 عصر
با سلام خدمت شما

1.خاصیت RowHeadersVisible دیتاگریدتون رو برابر False کنین.

2.با استفاده از AlternatingRowsDefaultCellStyle رنگ سطر مورد نظر رو رنگی کنید مثلا :



dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.LightGreen;


موفق باشین
بایت بایت

Fastdesign
پنج شنبه 04 آبان 1391, 07:42 صبح
این کد که شما نوشتید فقط می تونی یک ردیف رو رنگی کنی .

حالا من می خوام مثل اولین تصویر پست 1 : یک در میون رنگی بشه . یعنی می خوام اول تعداد رکورد ها رو به دست بیارم دیگه براش شرط بزارم .
مثلا اگه زوج بود فلان رنگ و اگه فرد بود هم فلان رنگ .

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

Y_Safaiee
پنج شنبه 04 آبان 1391, 08:22 صبح
با سلام مجدد

شما دو راه دارین

1.اگه میخواین یکی در میون رنگش عوض شه ساده ترین کار تغییر AlternatingRowsDefaultCellStyle دیتاگریدته تو پروپرتی دیتاگریدت چنین خصوصیتی هست با کدشم این میشه :



dataGridView1.AlternatingRowsDefaultCellStyle.Back Color = Color.LightGreen;


اولین تصویر ضمیمه خروجیته و نوعه نمایششه

*************************************

2.اگه میخوای با بررسی شرط عوض شه کدش اینه :


foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells[1].Value.ToString() == "younes") row.DefaultCellStyle.BackColor = Color.LightCyan;
}


دومین تصویر ضمیمه شده خروجی و نوعه نمایششه


موفق باشی
بایت بایت

boysilent
پنج شنبه 04 آبان 1391, 08:59 صبح
ببین دوست عزیز شما هنگامی که مطالب رو داخل گرید ویو میریزید میتونید یه حلقه for بزارید و بگید یکی درمیون رنگی بشه؟؟؟؟
for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)
{
dataGridView1.Rows[i++].DefaultCellStyle.BackColor = Color.LightGreen;
}

Fastdesign
پنج شنبه 04 آبان 1391, 10:20 صبح
خودم به این صورت نوشتم . حالا نمی دونم چقد بهینه است :
{
int i = dataGridView1.RowCount;
for (int j = 0; j < i; j++)
if (j % 2 == 0)
dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.Moccasin;
else
dataGridView1.Rows[j].DefaultCellStyle.BackColor = Color.Cornsilk;

حالا این کدها رو تو چه رویدادی بنویسم که وقتی که رکوردی اضافه شد یا روی تیتر گرید کیک شد هم حالت خودش رو از دست نده!!!

boysilent
جمعه 05 آبان 1391, 14:59 عصر
وقتیکه رکورد رو اضافه میکنی کیتونی یه rowcount بگیر و بعد از اینکه یه خونه اضاغه شد این کد رو بنویسی

int i = dataGridView1.RowCount;



dataGridView1.Rows[i+1].DefaultCellStyle.BackColor = Color.Moccasin;

farshid_web
شنبه 27 آبان 1391, 22:45 عصر
با سلام مجدد

شما دو راه دارین

1.اگه میخواین یکی در میون رنگش عوض شه ساده ترین کار تغییر AlternatingRowsDefaultCellStyle دیتاگریدته تو پروپرتی دیتاگریدت چنین خصوصیتی هست با کدشم این میشه :



dataGridView1.AlternatingRowsDefaultCellStyle.Back Color = Color.LightGreen;


اولین تصویر ضمیمه خروجیته و نوعه نمایششه

*************************************

2.اگه میخوای با بررسی شرط عوض شه کدش اینه :


foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells[1].Value.ToString() == "younes") row.DefaultCellStyle.BackColor = Color.LightCyan;
}


دومین تصویر ضمیمه شده خروجی و نوعه نمایششه


موفق باشی
بایت بایت

سلام دوست عزیز من یه سوال ازتون داشتم که اگه لطف کنید جواب بدین ممنون میشم
اگه بخوایم یه سطری را که مثلا توی جستجو پیداش میکنیم رنگی بشه و بقیه سطرها رنگی نشن چه باید کرد ؟؟
یعنی مثلا سطر 4 فقط رنگی بشه و اینم هست که این سطر مشخصی نیست و توی هر جست و جو ممکنه تغییر کنه