我使用的是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发送到服务器进行一些处理。谢谢你的帮助。
答案 0 :(得分:2)
尝试以下
<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;
}