none
我试图在gridview中ImageField中的DataImageUrlFormatString加入时间戳以避免缓存,但是提示ImageField没有databind事件,该如何解决该问题呢 RRS feed

  • 问题

  •  

    我试图在gridview中ImageField中的DataImageUrlFormatString加入时间戳以避免缓存,但是提示ImageField没有databind事件,该如何解决该问题呢

    <asp:ImageField HeaderText="图片" DataImageUrlField="ImgUrl" DataImageUrlFormatString="<%# '../BasePointPic/{0}?ct='+DateTime.Now+%>" >

    2013年2月7日 7:08

答案

  • 那我该如何在绑定gridview的时候给ImageField加一个时间戳呢

    示例代码:

    [aspx]

      <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowDataBound="GridView1_RowDataBound">
                    <Columns>
                        <asp:ImageField HeaderText="图片" DataImageUrlField="Img" DataImageUrlFormatString=">" />           </Columns>
                </asp:GridView>

    [cs]

    public partial class WebForm1 : System.Web.UI.Page
        {
            protected void Page_Load(object senderEventArgs e)
            {
                if (!IsPostBack)
                {
                    GridView1.DataSource = new[] 
                    {
                        new{Img="a"},
                        new{Img="b"}
                    };
                    GridView1.DataBind();
                }
            }
     
            protected void GridView1_RowDataBound(object senderGridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    Image img = e.Row.Cells[0].Controls[0as Image;
                    img.ImageUrl = string.Format("../BasePointPic/{0}?time={1}"DataBinder.Eval(e.Row.DataItem,"Img"), DateTime.Now.ToString());
                }
            }
        }

    帮助一起改进论坛质量?提交你的意见于此。
    我的博客园
    慈善点击,点击此处
    和谐拯救危机,全集下载,净化人心

    • 已标记为答案 Ken767 2013年2月12日 13:30
    2013年2月7日 7:50
    • 已标记为答案 Ken767 2013年2月12日 13:30
    2013年2月10日 3:00

全部回复