繁体   English   中英

CommandName和CommandArguments在ListView中无法正常工作

[英]CommandName and CommandArguments are not properly working in ListView

我在asp.net中使用ListView控件时遇到问题

我在ListView ItemTemplate使用了两个按钮链接。 对于这两个按钮,我都使用了“命令名称”和“命令参数”。 但是第一个可以正常工作,第二个可以提供错误。

System.InvalidOperationException: Insert can only be called on an insert item. Ensure only the InsertTemplate has a button with CommandName=Insert.

如果要添加InsertTemplate ,我们必须将其放置在哪里?

我正在复制我的代码。 请帮我。

设计图:

<asp:ListView ID="ListView1" runat="server" GroupPlaceholderID="groupPlaceHolder1" ItemPlaceholderID="itemPlaceHolder1" GroupItemCount="2" OnPagePropertiesChanging="ListView1_PagePropertiesChanging" DataKeyNames="InventoryID" OnItemCommand="ListView1_ItemCommand">
    <LayoutTemplate>
        <table width="100%">
            <tr style="background-color:lightblue;color:blue;text-align:center;font-size:25px;font-weight:bold">
                <td colspan="2">Available Books</td>
            </tr>
            <asp:PlaceHolder ID="groupPlaceHolder1" runat="server"></asp:PlaceHolder>
        </table>
    </LayoutTemplate>
    <GroupTemplate>
        <tr>
            <asp:PlaceHolder ID="itemPlaceHolder1" runat="server"></asp:PlaceHolder>
        </tr>
    </GroupTemplate>
    <ItemTemplate>
        <td>
            <table cellpadding="2" cellspacing="0" border="1" style="width:100%;height:100px; border:dashed 1px #04AFEF;background-color:#B0E2F5">

                <tr>
                    <td>
                        <asp:Button ID="btnReview" runat="server" Text="Review" CommandName="Select" CommandArgument='<%# Eval("InventoryID") %>'/>
                    </td>
                    <td></td>
                    <td>
                        <asp:Button ID="btnAddToCart" runat="server" Text="Add To Cart" CommandName="Insert" CommandArgument='<%# Eval("InventoryID") %>' />
                    </td>
                </tr>
            </table>
        </td>
    </ItemTemplate>
</asp:ListView>            

好吧,您可以像下面这样插入InsertItemTemplate:

<InsertItemTemplate>
    <tr style="background-color:#D3D3D3">
      <td valign="top">
        <asp:Label runat="server" ID="FirstNameLabel" 
          AssociatedControlID="FirstNameTextBox" Text="First Name"/>
        <asp:TextBox ID="FirstNameTextBox" runat="server" 
          Text='<%#Bind("FirstName") %>' /><br />
        <asp:Label runat="server" ID="LastNameLabel" 
          AssociatedControlID="LastNameTextBox" Text="Last Name" />
        <asp:TextBox ID="LastNameTextBox" runat="server" 
          Text='<%#Bind("LastName") %>' /><br />
        <asp:Label runat="server" ID="EmailLabel" 
          AssociatedControlID="EmailTextBox" Text="E-mail" />
        <asp:TextBox ID="EmailTextBox" runat="server" 
          Text='<%#Bind("EmailAddress") %>' />
      </td>
      <td>
        <asp:LinkButton ID="InsertButton" runat="server" 
          CommandName="Insert" Text="Insert" />
      </td>
    </tr>
  </InsertItemTemplate>

使用来自: https : //msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.listview.insertitemtemplate(v=vs.110).aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM