我有一个gridview,我用它来显示数据集结果.问题是我在其中使用分页.但是,当我点击页面#时,它表示我没有处理该事件.我需要重新绑定数据集???
谢谢
我创造了:
该怎么办?
我已经为数据库连接代码创建了sql helper文件并调用了该方法,而没有使用sqldatasource进行连接.
当我尝试进行分页时,收到错误:
GridView的'GridView1'触发了未处理的事件PageIndexChanging.
我已经允许分页并添加以下代码,但得到了错误.有谁知道可能是什么问题?
码:
protected void SubmitAppraisalGrid_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
SubmitAppraisalGrid.PageIndex = e.NewSelectedIndex;
SubmitAppraisalGrid.DataBind();
}
Run Code Online (Sandbox Code Playgroud)
设计:
<asp:GridView ID="SubmitAppraisalGrid" runat="server"
AutoGenerateColumns="False" BorderWidth="0px"
onrowcreated="SubmitAppraisalGrid_RowCreated" ShowHeader="False"
style="margin-right: 0px" AllowPaging="True" PageSize="1"
onselectedindexchanging="SubmitAppraisalGrid_SelectedIndexChanging">
</asp:GridView>
Run Code Online (Sandbox Code Playgroud) 我正在使用gridview,我想使用分页.我已经将allow paging设置为true,页面大小设置为5.我可以在gridview的基础上看到数字,但是当我点击一个数字移动到相应的页面时,它会抛出一个错误说:
The GridView 'GridView1' fired event PageIndexChanging which wasn't handled.
码:
<asp:GridView ID="GridView1" runat="server" CellPadding="5"
AutoGenerateColumns="False" AllowPaging="True" DataKeyNames="contact_id"
onrowcancelingedit="GridView1_RowCancelingEdit"
onrowediting="GridView1_RowEditing" onrowupdating="GridView1_RowUpdating"
PageSize="5">
<Columns>
<asp:TemplateField HeaderText="contact_id">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Eval("contact_id") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="name">
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Eval("name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="address">
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Eval("address") %>'></asp:Label><br />
<asp:Label ID="Label6" runat="server" Text='<%# Eval("city") %>'></asp:Label><br />
<asp:Label ID="Label7" runat="server" Text='<%# Eval("state") %>'></asp:Label><br />
<asp:Label ID="Label8" runat="server" Text='<%# Eval("pincode") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="email"> …
Run Code Online (Sandbox Code Playgroud) 我在Silverlight应用程序中使用DataPager控件.我为不同的DataGrids设置了不同的寻呼机,并希望为所有这些事件使用相同的事件处理程序来处理PageIndexChanged事件.委托必须将EventArgs对象作为参数.我可以使用此对象"返回"触发事件的控件吗?
我有一个gridview控件,但是,当我点击页码时,我收到错误"找不到页面".我在这里错过了什么?
我的代码是:
<asp:GridView ID="gvEmployeeResults" Width="900px" CellSpacing="1"
CellPadding="2"
AutoGenerateColumns="false" OnRowDataBound="gvEmployeeResults_OnRowDataBound"
runat="server" AllowPaging="true" >
<Columns>
<asp:TemplateField HeaderText="Last Name, First Name" ItemStyle-Wrap="true" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left">
<ItemTemplate>
<asp:LinkButton id="lbtnEmployeeName" OnCommand="EditEmployee_Command" CommandArgument='<%#Eval("EmployeeNum")%>' CommandName="EmployeeName" Visible="true" runat="server" ToolTip="Click to edit Employee."><%# DataBinder.Eval(Container.DataItem, "empLastName") + ", " + DataBinder.Eval(Container.DataItem, "empFirstName")%></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="empAddrLine1" ControlStyle-Width="225px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Address" />
<asp:BoundField DataField="empCity" ControlStyle-Width="120px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="City" />
<asp:BoundField DataField="empState" ControlStyle-Width="50px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="State" />
<asp:BoundField DataField="empPostalCode" ControlStyle-Width="100px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Zip" />
<asp:BoundField DataField="empDOB" ControlStyle-Width="100px" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="left" HeaderText="Date Of Birth" /> …
Run Code Online (Sandbox Code Playgroud) 这个问题似乎很常见,我已经完成了这个答案.
不幸的是,我的页面仍然没有被分页.这是我的代码在C#中的样子:
SqlCommand command = new SqlCommand("(SELECT ......", Connection);
SqlDataAdapter myAdapter = new SqlDataAdapter(command);
DataTable dt = new DataTable();
myAdapter.Fill(dt);
command.Connection = connection;
command.Connection.Open();
GridView1.DataSource = dt;
GridView1.DataBind();
GridView1.AllowPaging = true;
GridView1.PageSize = 15;
command.Connection.Close();
command.Connection.Dispose();
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我这样做时,我的分页没有显示出来.难道我做错了什么?
谢谢
我GridView
在一个页面上有多个页面,它们都是分页的。我需要处理OnPageIndexChanging
事件中的分页,但是我不想为每个脚本编写相同的代码GridView
。
那么如何从发送方获取GridView对象ID?我正在尝试执行以下操作...。
protected void PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView gridView = (GridView)sender.ID;
gridView.PageIndex = e.NewPageIndex;
gridView.DataBind();
}
Run Code Online (Sandbox Code Playgroud)
这样,我可以为所有GridView调用相同的事件处理程序,而不必为每个GridViews编写一个新的偶数处理程序?我只是不知道如何获取ID的的GridView
触发事件:(
任何帮助表示赞赏!
这似乎是一个容易提出的问题,但我无法在GridView中显示项目.这是我的代码:
public partial class TestList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{ TestProject.DataAccess.Repository.Instance.Initialize(Settings.Default.TestConnection);
BindData();
}
}
private void BindData()
{
//Restriction Info!!
gvAgentList.DataSource = EntityRegistration.DataAccess.Repository.Instance.GetData();
gvAgentList.DataBind();
}
protected void gvAgentList_PageIndexChanging (object sender, GridViewPageEventArgs e)
{
gvAgentList.PageIndex = e.NewPageIndex;
gvAgentList.DataBind();
}
private string ConvertSortDirectionToSql(SortDirection sortDirection)
{
string newSortDirection = String.Empty;
switch (sortDirection)
{
case SortDirection.Ascending:
newSortDirection = "ASC";
break;
case SortDirection.Descending:
newSortDirection = "DESC";
break;
}
return newSortDirection;
}
protected void gvAgentList_Sorting(object sender, GridViewSortEventArgs e) …
Run Code Online (Sandbox Code Playgroud) public partial class WebForm2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string connectionString =
WebConfigurationManager.ConnectionStrings["base"].ConnectionString;
string selectSQL = "SELECT author,book FROM ListItem";
SqlConnection con = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(selectSQL, con);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adapter.Fill(ds, "ListItem");
grid.DataSource = ds;
grid.DataBind();
}
protected void grid_PageIndexChanged(object sender, EventArgs e)
{
grid.PageIndex=e.NewPageIndex;//have a error grid.DataBind();
}
}
Run Code Online (Sandbox Code Playgroud)