<asp:GridView ID="gv1" runat="server" Width="100%" DataSourceID="ods1" AutoGenerateColumns="false"
DataKeyNames="FileID" HeaderStyle-Height="20px">
<Columns>
<asp:TemplateField ItemStyle-Width="25px" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:ImageButton ID="imgMimeType" runat="server" CommandName="download" />
</ItemTemplate>
...
我已经如上所述定义了我的图像按钮,但由于某些原因,当我单击按钮时,行命令无法启动。
奇怪的是,另一列中的linkbutton工作正常。
如何制作图片按钮会在发回后触发?
行绑定
Image Button imb = e.Row.FindControl("imgMimeType") as ImageButton;
if (imb != null)
{
imb.CommandArgument = file.FileID.ToString();
imb.AlternateText = imb.ToolTip = file.MimeType;
if (file.MimeType.Contains("zip"))
{
imb.ImageUrl = "~/Images/mimetypes/zip-icon.png";
}
...
行命令代码
public void gv1_RowCommand(object sender, GridViewCommandEventArgs e)
{
switch (e.CommandName.ToLower())
{
case "download":
...
答案 0 :(得分:0)
尝试暂时将图像按钮更改为链接按钮,以查看它是否有效。自从我使用asp.net以来已经有点了,但我记得遇到过一些问题,其中事件不能用于ImageButtons只在某些浏览器上丢失它们的图像。你的ImageButton是否有图像集?
答案 1 :(得分:0)
将CausesValidation =“False”添加到图像按钮。 这对我有用。