lonelyghost\Web\Admin_Blog\Upload\aa.gif下面是绑定数据的gridview       <asp:GridView ID="GVPictureInfo" runat="server" AutoGenerateColumns="False" DataKeyNames="Blog_PictureID" Width="278px" OnRowDeleting="GVPictureInfo_RowDeleting" style="font-size: 12pt">
            <Columns>
                <asp:TemplateField>
                   <ItemTemplate>
                      <asp:CheckBox ID="chkPcInfo" runat="server" />
                   </ItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="Blog_PictureCaption" HeaderText="图片描述" Visible="False" />
                <asp:BoundField DataField="Blog_PictureName" HeaderText="图片名称" Visible="False" />
                <asp:BoundField DataField="UserName" HeaderText="作者" Visible="False" />
                 <asp:ImageField  DataImageUrlField="Blog_PictureUpload" HeaderText="图片"></asp:ImageField>
                <asp:HyperLinkField  DataNavigateUrlFields="Blog_PictureID" DataNavigateUrlFormatString="~/Default2.aspx?Blog_PictureID={0}"  Target="_blank" Text="查看详细信息"  HeaderText="更多详细信息" />
                <asp:CommandField HeaderText="操作" ShowDeleteButton="True" />               
            </Columns>
        </asp:GridView>
--------------------------------------
图片我放在本地,数据库中我只存储了路径
--------------------------------------当我在删除该行的时候 protected void GVPictureInfo_RowDeleting(object sender, GridViewDeleteEventArgs e) 
我想获取<asp:ImageField  DataImageUrlField="Blog_PictureUpload" HeaderText="图片"></asp:ImageField>这列的值,因为这列显示图片
 
因为我删除当前行的数据的时候,只删除了数据库中的数据,而本地图片文件夹中的数据没有删除,所以我要获取显示图片的路径"lonelyghost\Web\Admin_Blog\Upload\aa.gif",然后进行删除
第一个问题:我不知道怎么获取这个路径
第二个问题:获取路径了,要如何删除图片文件夹中的这个aa.gif图片

解决方案 »

  1.   

    第一个问题:你读取数据库里的路径就是这个图片的路径。
    第二个问题:
    string delImage = Server.MapPath(".")+"\\lonelyghost\Web\Admin_Blog\Upload\aa.gif"; 
    File.Delete(delImage);
    具体还需要你自己研究
      

  2.   

    hidPicPath.Value 为数据库存储的路径.你可以取出来放到这个控件里.
    string fileallpath = AppDomain.CurrentDomain.BaseDirectory + hidPicPath.Value;
    try
    {
    FileInfo fo = new FileInfo(fileallpath);
    if (fo.Exists)
    {
    fo.Delete();
    }
    }
    catch (Exception exc)
    {
    }
      

  3.   

    在gridview随便哪个列里放置一个 隐藏控件.然后把路径读到这个里面
    再在删除事件里获取隐藏控件的值HiddenField hidPicPath= (HiddenField)gridview.Rows[e.RowIndex].FindControl("hidPicPath");string fileallpath = AppDomain.CurrentDomain.BaseDirectory + hidPicPath.Value;
    try
    {
    FileInfo fo = new FileInfo(fileallpath);
    if (fo.Exists)
    {
    fo.Delete();
    }
    }
    catch (Exception exc)
    {
    }
      

  4.   

    <asp:ImageField  DataImageUrlField="Blog_PictureUpload" HeaderText="图片"></asp:ImageField>这列的值怎么获取绑定的这个值啊   TO        FantasyFreed(FreeWap)
      

  5.   

    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            GridViewRow row = GridView1.Rows[e.RowIndex];
            Hashtable hash = new Hashtable();
            hash.Add("@ArticleID", row.Cells[0].Text);
            hash.Add("@UserID", Request.Cookies["User"]["UserID"]);
            CommonBlog.ExecuteNonQuery("P_Control_Article_Main_Delete", hash);
            Response.Redirect("List.aspx");
        }
      

  6.   

    比如说:获取第2行第4列的值:
    string str=this.GridView1.Rows[1].Cells[3].Text;
      

  7.   

    转换delete为模版列,把路径绑定到delete的CommandArgument
    后台:
    RowCommand事件中获取e.CommandArgument 就Ok了图片删除"FantasyFreed(FreeWap)"应该差不多了 这个网上比较好找