PDA

View Full Version : چطوری ردیف برای datagridview میشه گذاشت ؟



elham1611
یک شنبه 28 خرداد 1391, 20:50 عصر
با سلام
من یک datagridview دارم که میخوام براش ردیف بزارم (یعنی هر سطری یک شماره داشته )

مسلما سطر اول شمارش 1 و به ترتیب تا پایین. چه جوری میشه؟

ممنون

dana65
یک شنبه 28 خرداد 1391, 21:18 عصر
آی دی اتوماتیک که گذاشتی باید ارتباطش بدی با دیتاگرید.
روی خود دیتاگرید وقتی کلیک میکنی یه دکمه ی کوچیک داره اونو میزنی بعد گزینه ی edit column بعد یه ستون اضافه کن در قسمت پرو پرتیزش بخش دیتا یه خاصیت هست جلوش نام ستون آی دی خودکار در دیتابیس رو وارد کن اینطوری اعداد دیتابیس رو نشون میده.

MOTO MAN
یک شنبه 28 خرداد 1391, 21:51 عصر
سلام

شما ابتدا از طریق خود GridView به صورت دستی به column هاتون یک فیلد اضافه کنید(همون طور که دوستمون در بالا گفتند). به طور اتوماتیک این ستون صفرم دیتاگرید قرار می گیره.

فرض کردم که کوئری شما از بانک این بوده.(حلقه ی for آخر اهمیت داره)

موفق باشید...


MyDBEntities db = new MyDBEntities();
var q = from rows in db.Students
select rows;

dataGridView1.DataSource = q;


for (int i = 0; i < q.Count(); i++)
{
dataGridView1[0, i].Value = i+1;

}

مرتضی تقدمی
دوشنبه 29 خرداد 1391, 00:36 صبح
سلام
در رویداد cellpainting دیتاگرید از این کد استفاده کنید:


if (e.RowIndex >= 0 && e.ColumnIndex == 0)
DGV.Rows[e.RowIndex].Cells[0].Value = e.RowIndex + 1;

موفق باشید

elham1611
دوشنبه 29 خرداد 1391, 01:14 صبح
سلام
در رویداد cellpainting دیتاگرید از این کد استفاده کنید:


if (e.RowIndex >= 0 && e.ColumnIndex == 0)
DGV.Rows[e.RowIndex].Cells[0].Value = e.RowIndex + 1;

موفق باشید
ممنون
من این رویداد رو نوشتم ولی cellpainting اون رو به صورت اتوماتیک نشناخت و مجبور شدم دستی وارد کنم. و کار هم نکرد. یعنی هیچ خطایی نمیده و هیچ ستونی هم اضافه نمیشه.


private void dataGridView1_CellPaiting(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0 && e.ColumnIndex == 0)
dataGridView1.Rows[e.RowIndex].Cells[0].Value = e.RowIndex + 1;
}

مرتضی تقدمی
دوشنبه 29 خرداد 1391, 01:38 صبح
در Events دیتاگرید روی CellPainting دوبار کلیک کنید و کد بالا رو قرار بدید. کد کاملا تست شده است.
موفق باشید

elham1611
دوشنبه 29 خرداد 1391, 02:00 صبح
ممنون همین کار رو کردم ولی هیچ اتفاقی نیافتاد.
اگر کد درست باشه مشکل از جایی دیگست که بعدا روش کار میکنم
بهر حال ممنون