PDA

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



AmirAlimadadi
سه شنبه 08 دی 1388, 13:02 عصر
با سلام
می خواستم بدونم چه طور می شه سطر جاری رو موقع سورت کردن (مرتب سازی) یه ستون از دیتا گرید ویو حفظ کرد. این رو هم بگم که گرید ویو به یه DataTable متصل (bind) شده.
سطر جاری (Current Row) مثلا در مکان اول در گرید ویو قرار داره، موقعی که روی هدر یه ستون کلیک می کنم، گرید ویو بر اساس صعودی یا نزولی بودن اون ستون مرتب می شه، ولی در ترتیب جدید، سطری که قبلا در مکان اول بود مثلا به مکان پنجم می ره، ولی باز هم Current Row همون سطر اول می مونه، چه طور می شه که سطر جاری رو هم به سطر پنجم انتقال داد.
ممنون

behzad1986
سه شنبه 08 دی 1388, 13:09 عصر
سلام Current Row به صورت پیش فرض در هنگام مرتب کردن جابجا می شه !

AmirAlimadadi
سه شنبه 08 دی 1388, 15:39 عصر
سلام Current Row به صورت پیش فرض در هنگام مرتب کردن جابجا می شه !
سلام دوست عزیز، من خودم هم توی پست گفته بودم که این اتفاق می افته، اما راهی برای از بین بردن این شرایط وجود نداره.

AmirAlimadadi
پنج شنبه 10 دی 1388, 10:48 صبح
دوستان یعنی هیچ راهی نداره!!؟؟

behzad1986
پنج شنبه 10 دی 1388, 11:03 صبح
قبل از مرتب کردن مکان جاری رو تو یه متغیر ذخیره کن بعد از مرتب سازی دوباره خصوصیت selected اون سطر رو true کن!
Int32 CR2 = new Int32();
Int32 CR1 = new Int32();
private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e)
{
CR1 = CR2;
CR2 = e.RowIndex;

}
private void dataGridView1_Sorted(object sender, EventArgs e)
{
dataGridView1.Rows[CR1].Selected = true;
}