如何获取DataList';服务器上的s ItemTemplate项Url

本文关键字:服务器 ItemTemplate Url 何获取 获取 DataList | 更新日期: 2023-09-27 18:27:49

我使用的是Asp.Net C#4.0。我在一个包含ImageButton的页面上使用DataList。代码如下:;

<asp:DataList ID="DataList1" runat="server" DataSourceID="ObjectDataSource2" 
        DataKeyField="Pic_ID">
        <HeaderTemplate>
            Click Image to enlarge
        </HeaderTemplate>
        <ItemTemplate>
            <asp:ImageButton ID="ImageButton1" runat="server" Height="110px"
             ImageUrl='<%# Eval("Pic_Path") %>' Width="111px" 
                onclick="ImageButton1_Click(this.ToString())"/>
        </ItemTemplate>
    </asp:DataList>

我想在代码隐藏中将ImageButton中的当前ImageUrl发送到服务器上的方法"ImageButton1_Click"。我尝试更改我的代码好几次,但都没能修复。使用这段代码,我目前收到一个错误,上面写着"预期的方法名称"。我在服务器上的方法是;

protected void ImageButton1_Click(string Param)
{
    //Code here
}

简而言之,我想将DataList中图像的Url发送到服务器进行一些处理。谢谢你的帮助。

如何获取DataList';服务器上的s ItemTemplate项Url

尝试低于

<asp:ImageButton ID="ImageButton1" runat="server" Height="110px"
         ImageUrl='<%# Eval("Pic_Path") %>' Width="111px" 
            onclick="ImageButton1_Click"/>

并将方法更改为

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
    var btn = sender as ImageButton;
    var url = btn.ImageUrl;
}