PDA

View Full Version : مشکل بعد از paging کردن datalist



asi_hesam
پنج شنبه 09 اسفند 1386, 02:07 صبح
من از کد زیر برای قرار دادن اطلاعات پایگاه در دیتالیست و افزودن خاصیت paging به دیتالیست استفاده کردم .



protectedvoid Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
FetchDataToDataList();
}
}

privatevoid FetchDataToDataList()
{
SqlConnection con = newSqlConnection("Data Source=HESI;Initial Catalog=Test;Integrated Security=True");
SqlCommand cmd = newSqlCommand("select مسیر,عنوان from T", con);
con.Open();
PagedDataSource pagedDS = newPagedDataSource();
DataTable dt = newDataTable("_T");
dt.Load(cmd.ExecuteReader());
pagedDS.DataSource = dt.DefaultView;
pagedDS.AllowPaging = true;
pagedDS.PageSize = 5;
pagedDS.CurrentPageIndex = CurrentPage;
dlPaging.DataSource = pagedDS;
dlPaging.DataBind();
con.Close();
lblCurrentPage.Text = "Page: " + (CurrentPage + 1).ToString() + " of " + pagedDS.PageCount.ToString();
cmdPrev.Enabled = !pagedDS.IsFirstPage;
cmdNext.Enabled = !pagedDS.IsLastPage;
}
publicint CurrentPage
{
get
{
object o = this.ViewState["_CurrentPage"];
if (o == null)
return 0;
else
return (int)o;
}
set
{
this.ViewState["_CurrentPage"] = value;
}
}
protectedvoid cmdNext_Click(object sender, EventArgs e)
{
CurrentPage += 1;
FetchDataToDataList();
}
protectedvoid cmdPrev_Click(object sender, EventArgs e)
{
CurrentPage -= 1;
FetchDataToDataList();
}


این کد هم واسه قسمت source برنامه هست



<tablewidth="100%"border="0">
<tr>
<td><asp:labelid="lblCurrentPage"runat="server"></asp:label></td>
</tr>
<tr>
<td><asp:buttonid="cmdPrev"runat="server"text=" << "OnClick="cmdPrev_Click"></asp:button>
<asp:buttonid="cmdNext"runat="server"text=" >> "OnClick="cmdNext_Click"></asp:button></td>
</tr>
</table>
<asp:DataListID="dlPaging"runat="server"RepeatColumns="5"BackColor="#CCCCCC"BorderColor="#999999"BorderStyle="Solid"BorderWidth="3px"CellPadding="4"CellSpacing="2"ForeColor="Black"GridLines="Both"RepeatDirection="Horizontal">
<ItemTemplate>
<asp:LabelID="Label2"runat="server"Text='<%#DataBinder.Eval(Container.DataItem,"مëیںë") %>'></asp:Label>
<asp:ImageButtonID="ImageButton1"runat="server"Height=100Width=100ImageUrl='<%#Path.Combine("~\\Images\\", Eval("ê«ی©").ToString()) %>'CommandName="Edit"/>
</ItemTemplate>
<FooterStyleBackColor="#CCCCCC"/>
<ItemStyleBackColor="White"/>
<SelectedItemStyleBackColor="#000099"Font-Bold="True"ForeColor="White"/>
<HeaderStyleBackColor="Black"Font-Bold="True"ForeColor="White"/>
</asp:DataList>


تا الان درسته حالا مشکل من اینه که میخوام روی یکی از imagebuttun ها کلیک کنم اطلاعات کلی آن نمایش داده شود البته خودم کمی پیش رفتم ولی وقتی صفحه رو عوض میکنم درست کار نمیکنه .. کسی میتونه راهنمائیم کنه؟؟

asi_hesam
جمعه 10 اسفند 1386, 00:23 صبح
کسی این مشکل رو نداره.....؟؟؟؟ لطفا راهنمائیم کنید لازم دارم

araz_pashazadeh
شنبه 11 اسفند 1386, 12:06 عصر
حسام جان زمانی که به صفحه بعد یا قبل می روی به تعداد قسمتهای که در دیتا لیست خودت هست اضافه یا کم بکن بعد یک شمارهی سطری به دست میاد که اون همان سطر مورد نظر در پایگاه داده هستش که میتونی با استفاده از دستورات پایگاه داده بازیابی بکنی