PDA

View Full Version : بدست آوردن index سطر انتخابی



ali_mnkt
دوشنبه 21 اسفند 1391, 20:18 عصر
با سلام

چطور می شه index یک سطر از gridview رو بدست آورد . من یک command field از نوع select اضافه کردم خوب حالا چطور می تونم index سطری که انتخاب شده رو بدست آورم ؟

clover
دوشنبه 21 اسفند 1391, 20:54 عصر
سلام
دوست من لطفا جستجو کنید:
http://barnamenevis.org/showthread.php?68921-Select-%DA%A9%D8%B1%D8%AF%D9%86-%D8%AF%D8%B1-GridView&p=345269&viewfull=1#post345269


GridView1.SelectedIndex

ali_mnkt
دوشنبه 21 اسفند 1391, 21:57 عصر
سلام
دوست من لطفا جستجو کنید:
http://barnamenevis.org/showthread.php?68921-Select-%DA%A9%D8%B1%D8%AF%D9%86-%D8%AF%D8%B1-GridView&p=345269&viewfull=1#post345269


GridView1.SelectedIndex


دوست عزیز توجه نکردی . من index سطر رو می خوام به عنوان مثال اگه کاربر command field در سطر دوم رو کلیک کرد عدد 2 رو به ما بده

clover
دوشنبه 21 اسفند 1391, 23:03 عصر
دوست عزیز توجه نکردی . من index سطر رو می خوام به عنوان مثال اگه کاربر command field در سطر دوم رو کلیک کرد عدد 2 رو به ما بده

چطور می تونم index سطری که انتخاب شده رو بدست آورم ؟

خب این دستور هم همین کار رو می کنه. فقط زمانی که CommandName شما دقیقا Select باشه و رویداد SelectedIndexChange رو هندل کنید به شماره ی سطر انتخاب شده دسترسی دارید و چون گفته بودید سطر انتخاب شده من این روش رو پیشنهاد دادم.

روش دیگه استفاده از TemplateField و پاس دادن ایندکس از طریق CommandArgument هست:

<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="Button1" runat="server" Text="Button" CommandName="Select" CommandArgument='<%# Container.DataItemIndex %>' />
</ItemTemplate>
</asp:TemplateField>


protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Select")
{
int index = Convert.ToInt32(e.CommandArgument);
}
}

البته الان نمی دونم صفحه بندی توی هر کدوم از این روش ها چه تاثیری ممکنه داشته باشه، خودتون تست کنید.