PDA

View Full Version : سوال: سوال در مورد مرتب سازی در GridView



مصطفی مختاری
سه شنبه 07 آبان 1387, 16:59 عصر
با سلام خدمت دوستان:
بنده یک گرید دارم که امکان Sort و Select رو در اون فعال کرده ام.

مشکلم اینه که وقتی عملیات مرتب سازی رو با یکی از ستون ها انجام می دهم ،
و بعد یکی از رکورد ها رو انتخاب می نمایم ، رکورد اشتباهی انتخاب می شود ؟!

http://www.sleezo.com/imgs/2008/oct/28/c5o5.jpg

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


protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
DetailsView2.PageIndex = GridView1.SelectedIndex;
}ببینید با آنکه نام رکورد انتخاب شده "داوود" است اما "یوسف" انتخاب می شود ؟!

کسی اگه می تونه کمک کنه.
ممنون.

adonis
سه شنبه 07 آبان 1387, 21:59 عصر
تابلو دیگه چون DetailsView2 رو بعد از تغییر شماره صفحه دوباره بایند نمی کنی

مصطفی مختاری
چهارشنبه 08 آبان 1387, 06:25 صبح
موقعی که صفحه باز می شه مشکلی ندارم و با انتخاب هر رکورد ، خودش داخل دیتیل نمایش داده می شه.
اما وقتی با کلیک بر روی سر ستون "نام" در گرید ، گریدم رو با اون ستون مرتب می کنم مثل بالا
دیگه رکورد هایی که انتخاب می کنم اون رکوردی نیست که نمایش داده می شه.
مثلا در بالا من 101 رو انتخاب کردم اما 102 رو داره نمایش می ده ؟!
اگر 1515 رو هم انتخاب کنم ، 101 رو نمایش می ده.

مصطفی مختاری
چهارشنبه 08 آبان 1387, 07:46 صبح
adonis (http://barnamenevis.org/forum/member.php?u=13960) عزیز ممنون از توجه شما.
مشکلم رو با کمک این پست (http://forums.asp.net/t/1261242.aspx) حل کردم.

به این صورت :
یک sqlDataSource جدید ساختم و دیتیلم رو به اون مربوط کردم.
بعدش اون رو به این صورت تنظیم کردم :

<asp:SqlDataSource ID="SqlDataSource2"...
SelectCommand="SELECT * FROM [MyTable] WHERE ([RecID] = @RecID)"
<SelectParameters>
<asp:ControlParameter ControlID="Gridview1" Name="RecID" PropertyName="SelectedValue" Type="String" />
</SelectParameters>
باز هم ممنون :لبخندساده: