ASP.NET ObjectDataSource, измените свойство CommandName кнопки FormView

У меня есть ObjectDataSource, который я использую с FormView, и он отлично работает, но я хочу изменить одну мелочь. В FormView кнопка, запускающая обновление, имеет атрибут CommandName, установленный на «Обновить», но я хотел бы изменить этот атрибут на что-то другое, кроме «Обновить» - когда я изменяю этот атрибут, обновление больше не работает. Причина, по которой я хочу это сделать, заключается в том, что у меня есть несколько FormView на одной странице, и мне нужно иметь несколько кнопок обновления. Ниже мой код:

FormView:

            <asp:FormView ID="fvGeneralInfo" runat="server" 
            DataSourceID="objInstructorDetails" CssClass="Gridview"
            OnItemCommand="fvGeneralInfo_ItemCommand"
            DefaultMode="Edit">
            <EditItemTemplate>
            <table>  
               ....
                    <tr>
                        <td style="text-align:right;">
                            <asp:Label runat="server" ID="lblGeneralInfoMessage" Text="General Info updated successfully" Visible="false" />
                        </td>
                        <td>
                            <asp:Button runat="server" ID="btnUpdateGeneralInfo" ValidationGroup="UpdateGeneralInfo" Text="Update" CommandName="Update" />
                            <asp:Button runat="server" ID="btnCancelGeneralInfo" Text="Cancel" CommandName="CancelGeneralInfo" />
                        </td>
                    </tr>
                </table>  
            </EditItemTemplate>
        </asp:FormView>

ObjectDataSource:

    <asp:ObjectDataSource ID="objInstructorDetails" runat="server" TypeName="AIMLibrary.BLL.Instructor" SelectMethod="GetInstructorDetails" 
 InsertMethod="InsertInstructor" UpdateMethod="UpdateInstructor" OnInserting="objInstructorDetails_OnInserting" 
 OnUpdating="objInstructorDetails_OnUpdating" >         
    <SelectParameters>
        <asp:QueryStringParameter Name="InstructorId" QueryStringField="InstructorId" />
    </SelectParameters>
    <UpdateParameters>
        <asp:Parameter Name="instructorId" Type="Int32" />
        <asp:Parameter Name="firstName" Type="String" DefaultValue="" />
        <asp:Parameter Name="middleName" Type="String" DefaultValue="" />
        <asp:Parameter Name="lastName" Type="String" DefaultValue="" />
        <asp:Parameter Name="phone" Type="String" DefaultValue="" />
        <asp:Parameter Name="email" Type="String" DefaultValue="" />
        <asp:Parameter Name="addressLine1" Type="String" DefaultValue="" />
        <asp:Parameter Name="addressLine2" Type="String" DefaultValue="" />
        <asp:Parameter Name="city" Type="String" DefaultValue="" />
        <asp:Parameter Name="state" Type="String" DefaultValue="" />
        <asp:Parameter Name="zip" Type="String" DefaultValue="" />
        <asp:Parameter Name="abcBoardNumber" Type="String" DefaultValue="" />
    </UpdateParameters>
</asp:ObjectDataSource>  

person Tone    schedule 27.09.2009    source источник


Ответы (1)


Каждый FormView будет иметь собственное событие для обработки обновлений, поэтому совпадение CommandName для разных FormView не должно быть проблемой.

Вы можете изменить название кнопок, если это проблема, изменив его текстовое значение.

person Kevin LaBranche    schedule 27.09.2009