شاید این کد به شما کمک کنه
private void myDataGridView_Load(object sender, EventArgs e)
{
// اضافه کردن ستون جدید به دیتاگرید
DataGridViewColumn column = new DataGridViewTextBoxColumn();
column.Name = "ردیف";
column.HeaderText = "ردیف";
column.Width = 50;
myDataGridView.Columns.Insert(0, column);
// شماره گذاری خودکار سطرها
for (int i = 0; i < myDataGridView.Rows.Count; i++)
{
myDataGridView.Rows[i].Cells[0].Value = (i + 1).ToString();
}
}
private void myDataGridView_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e)
{
// بررسی می کنیم که آیا سطر دیتاگرید حذف شده است یا خیر
if (e.RowIndex >= 0)
{
// به روز رسانی شماره گذاری سطرها بعد از حذف یک سطر
for (int i = e.RowIndex; i < myDataGridView.Rows.Count; i++)
{
myDataGridView.Rows[i].Cells[0].Value = (i + 1).ToString();
}
}
}
برای کاهش زمان لود، می توانید از رویه هایی مانند لود کردن داده ها به صورت تکه تکه و به صورت ناهمزمان استفاده کنید. به عنوان مثال، می توانید داده های دیتاگرید را به صورت ناهمزمان در حین بارگذاری فرم با استفاده از یک نخ جداگانه بارگیری کنید، به جای بارگذاری همه داده ها به صورت همزمان. همچنین، می توانید تعداد ستونهای دیتاگرید را کاهش دهید و فقط ستونهایی را که برای کاربر لازم است نمایش دهید.