2011-04-29 90 views
1

我有如下定義的aspx頁面定義一個GridView: 定義事件處理程序codbehinb具有以下特徵:沒有重載「GridView_RowUpdating」匹配委託「System.Web.UI.WebControls.GridViewUpdateEventHandler」

protected void ApplicantGridView_RowUpdating(object sender, GridViewUpdatedEventArgs e) 
{ 
    e.NewValues["fk_WorkerID"] = workersDropDownList.SelectedValue; 
} 

我能夠成功地構建web項目,當我在瀏覽器中打開頁面時出現上述錯誤。

<asp:GridView ID="ApplicantGridView" runat="server" AutoGenerateColumns="False" 
DataSourceID="ApplicantsObjectDataSource" DataKeyNames="ApplicantID" 
OnRowUpdating="ApplicantGridView_RowUpdating" > 
    <Columns> 
     <asp:CommandField ShowEditButton="true" ShowDeleteButton="true" ItemStyle-VerticalAlign="Top"> 
      <ItemStyle VerticalAlign="Top"></ItemStyle> 
     </asp:CommandField> 
     <asp:DynamicField DataField="CaseName" HeaderText="Case Name" SortExpression="CaseName" 
      ItemStyle-VerticalAlign="Top"> 
      <ItemStyle VerticalAlign="Top"></ItemStyle> 
     </asp:DynamicField> 
     <asp:DynamicField DataField="CaseNumber" HeaderText="Case Number" SortExpression="CaseNumber" 
      ItemStyle-VerticalAlign="Top"> 
      <ItemStyle VerticalAlign="Top"></ItemStyle> 
     </asp:DynamicField> 
     <asp:DynamicField DataField="ApplicationDate" HeaderText="Application Date" SortExpression="ApplicationDate" 
      ItemStyle-VerticalAlign="Top"> 
      <ItemStyle VerticalAlign="Top"></ItemStyle> 
     </asp:DynamicField> 
     <asp:TemplateField HeaderText="Worker" SortExpression="FS_Worker.WorkerName"> 
      <ItemTemplate> 
       <asp:Label ID="Label1" runat="server" Text='<%# Eval("FSWorker.WorkerName") %>'></asp:Label> 
      </ItemTemplate> 
      <EditItemTemplate> 
       <asp:ObjectDataSource ID="FSWorkersObjectDataSource" runat="server" 
        TypeName="DSS_OTDA_FS.DAL.SCDSS_ApplicationRepository" 
        DataObjectTypeName="DSS_OTDA_FS.DAL.FSWorker" 
        SelectMethod="GetFSWorkerNames" > 
       </asp:ObjectDataSource> 
       <asp:DropDownList ID="FSWorkerDropDownList" runat="server" 
        DataSourceID="FSWorkerObjectDataSource" 
        SelectedValue='<%# Eval("WorkerName") %>' 
        DataTextField="WorkerName" DataValueField="WorkerID" 
        OnInit="FSWorkersDropDownList_Init" > 
       </asp:DropDownList>  
      </EditItemTemplate> 
      <ItemStyle VerticalAlign="Top" /> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 
<asp:ValidationSummary ID="ApplicantsValidationSummary" runat="server" 
    ShowSummary="true" DisplayMode="BulletList" style="color: Red; width: 40em;" /> 

也就是說在ASPX形式在GridView

+0

請發表您的完整的表單設計。 – 2011-04-29 18:35:52

+0

抱歉,我現在可以看到您的設計表單;讓我更新我的答案。 – 2011-04-29 18:40:32

回答

9

你的方法簽名不正確,應改爲

protected void ApplicantGridView_RowUpdating(object sender, GridViewUpdateEventArgs e) 

你有GridViewUpdate * d * EventArgs的

2

這是一個事件參數類型差異很小

RowUpdating使用GridViewUpdateEventArgs

RowUpdated使用GridViewUpdatedEventArgs

注意額外的 'd'

相關問題