如何检测单击数据列表项的哪个元素?

罗伯特

我的Web表单应用程序的updatepanel中有一个数据列表,该数据列表包含:{图像按钮,标签,标签}。数据列表已连接到银行。在imagebutton中将显示图像的缩略图。我希望当用户单击数据列表中的每个图像按钮时,将显示原始图像。所有数据已成功显示在数据列表中,但问题是单击图像按钮后出现的。我不能继续。如何检测单击了哪个图像按钮?它的数据源是什么?同一单元格中标签的文本或数据源是什么?

请帮助我,我的代码很受打击:

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>

<div class="content">          
        <div class="datashow">
            <asp:DataList ID="DataList1" runat="server" BorderColor="#666666" BorderStyle="None" BorderWidth="2px" CellPadding="2" CellSpacing="2" Font-Size="Small"   RepeatDirection="Horizontal" CssClass="dl" HorizontalAlign="Center" RepeatColumns="5">                    
            <HeaderStyle BackColor="#333333" Font-Bold="True" Font-Size="Large" ForeColor="White"  HorizontalAlign="Center" Wrap="True" />                                                                                  
                <ItemTemplate>
                <asp:ImageButton  ID="imgbtn" runat="server"  ImageUrl='<%# Bind("imgtp","~/images/{0}") %>'  Width="100px" OnClick="imgbtn_Click" />
                <br />
                <b>Employee Name:</b>
                <asp:Label ID="lblCName" runat="server" Text='<%# Bind("name") %>'></asp:Label>
                <br />
                <b>Designation:</b>
                <asp:Label ID="lblName" runat="server" Text='<%# Bind("company") %>'></asp:Label>

            </ItemTemplate>
        </asp:DataList>    

        </div>              
</div>

    </ContentTemplate>
</asp:UpdatePanel>      

protected void imgbtn_Click(object sender, ImageClickEventArgs e)
{
    //how to detect which imagebtn clicked and what is its datasource?
}
蒂姆·施密特(Tim Schmelter)

sender是按钮,它NamingContainerDataListItem

protected void imgbtn_Click(object sender, ImageClickEventArgs e)
{
    var imgbtn = (ImageButton)  sender;
    var item   = (DataListItem) imgbtn.NamingContainer;
    // the datasource is not available on postback, but you have all other controls
    var lblCName = (Label) item.FindControl("lblCName");
    string company = lblCName.Text;
}

你也可以使用ImageButtonCommandArgument存储ID或使用一个隐藏的控制(Visible=falseHiddenField)储存。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何检测单击数据列表项的哪个元素?

来自分类Dev

如何检测对列表元素的单击?

来自分类Dev

检测单击了哪个元素

来自分类Dev

如何检测列表视图用户单击了哪个行按钮

来自分类Dev

如何检测列表视图用户单击了哪个行按钮

来自分类Dev

单击span元素时如何隐藏列表项

来自分类Dev

如何检测单击了哪个CALayer?

来自分类Dev

单击列表项时如何显示其他数据?

来自分类Dev

从元素列表中找出单击了哪个元素

来自分类Dev

从元素列表中找出单击了哪个元素

来自分类Dev

如何基于项目单击创建活动以及如何调整从列表项目单击的数据

来自分类Dev

如何检测单击了哪个按钮?(Pynput)

来自分类Dev

如何检测单击了哪个按钮-Java

来自分类Dev

如何检测单击了哪个单选按钮?

来自分类Dev

如何检测单击了哪个删除按钮?

来自分类Dev

如何检测在javascript中单击了哪个按钮?

来自分类Dev

如何检测使用Jquery单击了哪个表?

来自分类Dev

如何检测使用javascript单击了哪个按钮?

来自分类Dev

在MVP结构中,哪个类负责保存列表项以及如何在此通知数据更改

来自分类Dev

单击列表项时如何将数据从子级传递到父级

来自分类Dev

检测单击了哪个JLabel

来自分类Dev

单击RecyclerView列表项

来自分类Dev

单击列表视图时如何获取列表项的值

来自分类Dev

单击父列表时如何显示隐藏的列表项

来自分类Dev

如何仅显示单击哪个按钮的数据?

来自分类Dev

地图上的多个标记->如何检测单击了哪个标记?

来自分类Dev

Javascript-如何突出显示最后单击的列表项

来自分类Dev

如何使数组中的每个列表项都可单击?

来自分类Dev

如何通过单击列表项调用活动

Related 相关文章

热门标签

归档