C# 已使用buttonfield分页上的gridview命令参数

C# 已使用buttonfield分页上的gridview命令参数,c#,button,gridview,pagination,C#,Button,Gridview,Pagination,我正在使用c#net 我有一个gridview,它需要包含一个“使用”按钮(appointmentId设置为commandargument) 源代码 <asp:GridView ID="resultsReturned" runat="server" AllowPaging="True" AutoGenerateColumns="False" EnableSortingAndPagingCallbacks="True" OnPageIndexChanged="r

我正在使用c#net

我有一个gridview,它需要包含一个“使用”按钮(appointmentId设置为commandargument)

源代码

<asp:GridView ID="resultsReturned" runat="server" AllowPaging="True"  
    AutoGenerateColumns="False"
    EnableSortingAndPagingCallbacks="True" 
    OnPageIndexChanged="resultsReturned_PageIndexChanged" 
    onrowcommand="resultsReturned_RowCommand">
    <Columns>    
      <asp:BoundField DataField="UserAppointmentId" HeaderText="App ID" />
      <asp:BoundField DataField="UserBookingName" HeaderText="Booking Name" />
      <asp:TemplateField>
        <ItemTemplate>                
          <asp:Button runat="server" 
            ID="UseButton"
            Text="Use"
            CommandName="Use"
            CommandArgument="UserAppointmentId" />
        </ItemTemplate>
      </asp:TemplateField>
    </Columns>
  </asp:GridView>  
这用于分页:

private void BindAppointments()
{
    var results = appointmentRepos.GetBookingIdBySearchCriteria(catgoryid, resultsReturned.PageIndex * resultsReturned.PageSize, -1);

    resultsReturned.DataSource = results;            
    resultsReturned.DataBind();
}
我正在将约会绑定到页面加载/搜索\u单击中的gridview

这是我收到的错误:

TemplateField上不支持回调,因为某些控件无法在回调中正确更新。关闭“resultsReturned”上的回调

请尝试以下操作:

 <asp:Button runat="server" 
ID="UseButton" Text="Use" CommandName="Use"
CommandArgument='<%# DataBinder.Eval(Container,"DataItem.UserAppointmentId") %>' />


并设置EnableSortingAndPagingCallbacks=“False”

这仍然会导致相同的问题:TemplateField上不支持回调,因为某些控件无法在回调中正确更新。关闭“resultsReturned”上的回调。此处出现此错误消息:resultsReturned.DataBind();我更改了EnableSortingAndPagingCallbacks=“False”,并出现以下错误:回发或回调参数无效。在配置或页面中使用启用事件验证。出于安全目的,此功能验证回发或回调事件的参数是否源自最初呈现它们的服务器控件。如果数据有效且符合要求,请使用ClientScriptManager.RegisterForEventValidation方法注册回发或回调数据以进行验证。
 <asp:Button runat="server" 
ID="UseButton" Text="Use" CommandName="Use"
CommandArgument='<%# DataBinder.Eval(Container,"DataItem.UserAppointmentId") %>' />