PDA

View Full Version : سوال: foreach معکوس



rezayeman
یک شنبه 15 مرداد 1391, 12:47 عصر
سلام دوستان چطوری می تونم یک حلقه foreach معکوس داشته باشم؟ مثلا حلقه زیر را معکوس کنم.

foreach (DataGridViewRow Row in DataGridView1.Rows)
{
}

حلقه بالا از سطر اول تا سطر آخر دیتا گرید را پیمایش می کنه من می خوام از سطر آخر تا سطر اول را پیمایش بکنه

با حلقه for خودم بلدم لطف کنید فقط با foreach راهنمایی کنید

با تشکر

sirvan-me
یک شنبه 15 مرداد 1391, 13:11 عصر
یه نمونه foreach معکوس براتون نوشتم ....

foreach (string str in new List<string>(){"a","b","c","d","e","f","g","h",
"i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y",
"z"}.Reverse<string>())
{
MessageBox.Show(str);
}

tooraj_azizi_1035
یک شنبه 15 مرداد 1391, 13:11 عصر
سلام
آیا متد Reverse رو می بینی من اینجا VS ندارم:
foreach (DataGridViewRow Row in DataGridView1.Rows.Reverse())
{
}

rezayeman
یک شنبه 15 مرداد 1391, 13:23 عصر
سلام
آیا متد Reverse رو می بینی من اینجا VS ندارم:
foreach (DataGridViewRow Row in DataGridView1.Rows.Reverse())
{
}



سلام دوست عزیز

خاصیت Reverse در سطر دیتا گرید ویو وجود نداره

rezayeman
یک شنبه 15 مرداد 1391, 13:25 عصر
یه نمونه foreach معکوس براتون نوشتم ....

foreach (string str in new List<string>(){"a","b","c","d","e","f","g","h",
"i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y",
"z"}.Reverse<string>())
{
MessageBox.Show(str);
}

از این روش چطوری می تونم توی سطر های دیتا گرید ویو استفاده کنم؟

sirvan-me
یک شنبه 15 مرداد 1391, 13:28 عصر
اگه اشتباه نکنم :متفکر: :

DataGridViewRow[] Rows = new DataGridViewRow[dataGridView1.Rows.Count];
dataGridView1.Rows.CopyTo(Rows, 0);
foreach (DataGridViewRow Row in Rows.Reverse())
{
//...
}

tooraj_azizi_1035
یک شنبه 15 مرداد 1391, 13:35 عصر
foreach (DataGridViewRow Row in DataGridView1.Rows.OfType<DataGridViewRow>().Reverse())
{
}

rezayeman
یک شنبه 15 مرداد 1391, 13:40 عصر
دقیقا همینه

هر دو روشی که گفتین کار می کنه

دست گلتون درد نکنه از راهنماییتون ممنون

مشکل حل شد