ASPX

<asp:SqlDataSource ID="SqlDataSource5" runat="server" 
       ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
       SelectCommand="SELECT * FROM [Themes] WHERE ([Theme] = @Theme) ORDER BY [Price]">
       <SelectParameters>
            <asp:Parameter DefaultValue="Dubai-and-Beyond" Name="Theme" Type="String" />
       </SelectParameters>                                   
</asp:SqlDataSource>
<asp:ListView ID="theme5" runat="server" DataSourceID="SqlDataSource5">
      <LayoutTemplate>
             <div id="itemPlaceHolderContainer" runat="server">
                 <span id="itemPlaceHolder" runat="server"></span>
             </div>
       </LayoutTemplate>
<ItemTemplate>
    <div>
       <asp:Image ID="Destinationimage" runat="server"
        ImageUrl='<%# Eval("ID", "~/CMS/ThemesHandler.ashx?ID={0}")+"&img=1"%>'  
        AlternateText="Destination_Image"  Height="140px" Width="179px" />
       <asp:Label ID="lblcountry" runat="server" Text='<%#Eval("Country") %>' />
   </div>                                                                                           
   <div class="hotel_name">                                                            
       <asp:Label ID="lblcountry" runat="server" Text='<%#Eval("Country") %>' /></div>
       <asp:ImageButton ID="imgbtn5" runat="server" ImageUrl="images/book_nw.png"  
            OnClick="imgbtn5_Click" AlternateText="get_quote"/></div>
    </ItemTemplate>
    </asp:ListView>

后面的代码

protected void imgbtn5_Click(object sender, EventArgs e)
{        
    ListViewItem item = theme5.Items[0];
    Label country = (Label)item.FindControl("lblcountry");
    string con = country.Text.ToString();
    Session["country"] = con.ToString();
    Response.Redirect("Get_Quote.aspx");
}

在这里,Theme5是Listview。 每个列表视图项中都有一个Label和imgbutton。 我想在imgbutton click事件上传递标签值。 这里的问题是我无法识别列表视图项的行索引。

#1楼 票数:0

您可以在ListView中使用ImageButton的CommandNameCommandArgument 然后,您可以从ItemCommand事件中访问相应项。

<asp:ImageButton ID="imgbtn5" runat="server" ImageUrl="images/book_nw.png"  
        OnClick="imgbtn5_Click" AlternateText="get_quote"
        CommandName="YOUR_COMMAND_NAME" 
        CommandArgument='<%#Eval("ANY_COLUMN_OF_SOURCE") %>' />

并在您的codeBehind文件中

protected void theme5_OnItemCommand(object sender, ListViewCommandEventArgs e)
{
  if (String.Equals(e.CommandName, "YOUR_COMMAND_NAME"))
  {
   string arg = e.CommandArgument; // do whatever you want
   ListViewDataItem dataItem = (ListViewDataItem)e.Item;

 }
}

  ask by Rushikesh Korgaonkar translate from so

未解决问题?本站智能推荐:

1回复

ListView控件-获取更多项目

我试图找到上述问题的答案,但收效甚微-也许我是问错了问题或采取了错误的方法。 我正在使用C#,Asp.Net,但是仍在框架的版本4中。 我使用一个listview控件来显示有限数量的项目。 通常,我会显示10个项目并添加分页,但是在这种情况下,我正在寻找一种截然不同的方法。
3回复

在ListView中的Dropdownlist上的selectedIndexChanged上获取ListView项的值

我在ListView的每一行都有一个ListView和DropDownList。 您可以在该DropDownlist中使用指定人员(DropDownList显示来自MySql数据库的数据)。 更改人员时,我需要做一些数据库操作。 为此,我需要知道更改了哪个ListView行,我需要知道
1回复

ListView控件

我已经在Photoshop中设计了一个样机,我打算将其应用到我的产品目录的ListView控件中,但它似乎无法正确显示(未对齐?),我希望这里的人可以查明我的错误,因为我一直在尝试弄清楚无济于事。 预期结果/样机: 调试后(不要介意丢失的照片): 看看我的代码, CSS:
3回复

在ListView中获取对象的数据库ID并从用户控件ListView更新ListView

我正在创建一个网站,并且面临以下问题。 我有2个ListViews。 第一个ListView在名为Sidebar.ascx的用户控件内: 它必须仅显示名称。 第二个列表视图在我的Default.aspx内部 我需要的是Default.aspx中的ListView在不
1回复

ASP.NET获取正确的listview项,以便将其删除

我在Windows Azure中有一个数据库,我想在列表视图中单击链接按钮后删除一行。 我已经尝试了100种不同的方法,但是我无法使其正常工作,请帮帮我! 如何在此处获取正确的参数? “CabinTable.Rows.RemoveAt(?)”
1回复

Listview上传控件

我有一个具有插入功能的listview,其中一个字段是image字段,如何添加一个上载控件以将图像上载并将文件路径存储到数据库中。 或者,我可以将文件上载到布局控件之外,然后使用文件路径更新布局中的文本框。 谢谢
5回复

访问ListView的LayoutTemplate内的控件

如何在ListView控件的LayoutTemplate中访问Control? 我需要转到litControlTitle并设置其Text属性。 有什么想法吗? 也许通过OnLayoutCreated事件?
1回复

我的ListView显示重复项

我试图让买卖网站的用户只能编辑他们准备出售的产品。 我已经知道了,但是结果是它显示了重复项。 我是Stack Overflow和asp.net的新手,所以如果我没有遵循正确的程序,我们深表歉意。