在asp.net中未触发网格视图中的分页 [英] Paging in grid view not fired in asp.net
问题描述
嗨..这里是在网格视图中绑定数据库图像..我将pagesize设置为5 ..如果网格中的图像超过5意味着分页属性不能正常工作..任何人都可以帮助我吗?
< asp:GridView ID =gvImagesrunat =serverAllowPaging =True
AutoGenerateColumns =FalseCssClass =GridviewHeaderStyle -BackColor =#446182
HeaderStyle-ForeColor =whiteOnPageIndexChanging =gvImages_PageIndexChanging
OnRowCommand =gvImages_RowCommandOnSelectedIndexChanged =gvImages_SelectedIndexChanged
PageSize =4宽度=100>
< columns> < asp:TemplateField HeaderText =Image>
< itemtemplate>
< asp:Image ID =Image1 runat =serverBorderColor =#446182BorderWidth =2Height =150px
ImageUrl =''<%#〜/ Image.aspx?id =+ Eval( id)%>''宽度=150px/>
< asp:HiddenField ID =hf1runat =server值=''<%#Eval( id)%>''/>
< asp:TemplateField HeaderText =删除>
< itemtemplate>
< asp:按钮ID =BtnRemoverunat =serverBackColor =# 446182BorderColor =#446182
CommandName =删除CssClass =txtText =删除/>
< pagersettings firstpagetext =Firstlastpagetext =Lastmode =NumericFirstLast>
PageButtonCount =4/>
< pagerstyle backcolor =#446182font-bold =trueforecolor =White>
< HeaderStyle BackColor =#446182ForeColor =White/>
.cs
protected void gvImages_RowCommand(object sender,GridViewCommandEventArgs e)
{
试试
{
lbldel.Text =;
if(e.CommandName ==Remove)
{
GridViewRow row =(GridViewRow)((Control)e.CommandSource) .NamingContainer;
//(或)//
// GridViewRow row =(GridViewRow)((Control)e.CommandSource).Parent.Parent;
index = row.RowIndex;
HiddenField id1 =(HiddenField)gvImages.Rows [index] .FindControl( hf1);
if(dbo.deleterecords(image,id =''+ id1.Value +'')== true )
{
bindgrid();
lbldel.Text =图片已删除;
}
}
}
catch (例外情况)
{
例外E =前;
}
}
protected void gvImages_PageIndexChanging(object sender,GridViewPageEventArgs e)
{
try
{
gvImages.PageIndex = e.NewPageIndex;
bindgrid();
}
catch(例外情况)
{
}
}
public void bindgrid()
{
尝试
{
DataTable dt = dbo.GetRecordsWithQuery(选择'''作为Sno,id,图像,''删除'作为[删除]来自图片);
gvImages.DataSource = dt;
gvImages.DataBind();
}
catch(Exception ex)
{
Exception E = ex;
}
}
Hi.. here am bind database images in grid view.. I set pagesize as 5.. If the images in grid exceeds 5 means the paging property not working properly.. Can anyone help me??
<asp:GridView ID="gvImages" runat="server" AllowPaging="True"
AutoGenerateColumns="False" CssClass="Gridview" HeaderStyle-BackColor="#446182"
HeaderStyle-ForeColor="white" OnPageIndexChanging="gvImages_PageIndexChanging"
OnRowCommand="gvImages_RowCommand" OnSelectedIndexChanged="gvImages_SelectedIndexChanged"
PageSize="4" Width="100">
<columns> <asp:TemplateField HeaderText="Image">
<itemtemplate>
<asp:Image ID="Image1" runat="server" BorderColor="#446182" BorderWidth="2" Height="150px"
ImageUrl=''<%# "~/Image.aspx?id="+Eval("id") %>'' Width="150px" />
<asp:HiddenField ID="hf1" runat="server" Value=''<%# Eval("id") %>'' />
<asp:TemplateField HeaderText="Remove">
<itemtemplate>
<asp:Button ID="BtnRemove" runat="server" BackColor="#446182" BorderColor="#446182"
CommandName="Remove" CssClass="txt" Text="Remove" />
<pagersettings firstpagetext="First" lastpagetext="Last" mode="NumericFirstLast">
PageButtonCount="4" />
<pagerstyle backcolor="#446182" font-bold="true" forecolor="White">
<HeaderStyle BackColor="#446182" ForeColor="White" />
.cs
protected void gvImages_RowCommand(object sender, GridViewCommandEventArgs e)
{
try
{
lbldel.Text = "";
if (e.CommandName == "Remove")
{
GridViewRow row = (GridViewRow)((Control)e.CommandSource).NamingContainer ;
// (or) //
// GridViewRow row = (GridViewRow)((Control)e.CommandSource).Parent.Parent;
index = row.RowIndex;
HiddenField id1 = (HiddenField)gvImages.Rows[index].FindControl("hf1");
if (dbo.deleterecords("image", "id=''" + id1.Value + "''") == true)
{
bindgrid();
lbldel.Text = "Image Deleted";
}
}
}
catch (Exception ex)
{
Exception E = ex;
}
}
protected void gvImages_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
try
{
gvImages.PageIndex = e.NewPageIndex;
bindgrid();
}
catch (Exception ex)
{
}
}
public void bindgrid()
{
try
{
DataTable dt = dbo.GetRecordsWithQuery("Select '''' as Sno,id,image,''Remove'' as [Remove] from image");
gvImages.DataSource = dt;
gvImages.DataBind();
}
catch (Exception ex)
{
Exception E = ex;
}
}
推荐答案
你可以显示你的代码,所以我可以看到你的错误
Can u show ur code , so i can see where ur wrong
这篇关于在asp.net中未触发网格视图中的分页的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!