【问题标题】:How to get DataList's ItemTemplate items Url on server如何在服务器上获取 DataList 的 ItemTemplate 项目 Url
【发布时间】:2013-08-15 12:58:39
【问题描述】:

我正在使用 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发送到服务器进行一些处理。感谢您的帮助。

【问题讨论】:

  • 不工作?字符串 imgurl = ImageButton1.ImageUrl 或字符串 imageurl = e.ImageUrl

标签: c# asp.net datalist


【解决方案1】:

下面试试

<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;

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-21
    相关资源
    最近更新 更多