2011-11-08 124 views
0

删除图像后,提交查询我有以下的代码,并在DataList列出了一些图片:显示从数据列表

protected void btnDel_Click(object sender, EventArgs e) 
{ 
    if (Id != 0) 
    { 
    BaseClass.Delete(Id1); 
    string path = Path.Combine(GetDirectory(Name), Name); 
     File.Delete(path); 
    } 
} 

public void BindImages() 
{ 
    path = BaseClass.GetAllImages(PId); 
    for (int i = 0; i < path.Count; i++) 
    { 
     ArrayList lst = path[i]; 
     tb.Rows.Add(Convert.ToInt32(lst[0]), lst[1].ToString(), 
               lst[2].ToString(), i); 
    } 
    dlst1.DataSource = tb; 
    dlst1.DataBind(); 
} 

当我删除按钮点击图像的图像被删除,但是当我重新绑定DataList图像被复制。

我在我的PageLoad方法中绑定了DataList

回答

1

您必须在Page_Load处理程序中使用IsPostBack布尔值属性。

protected void page_load() 
{ 
    if(!IsPostBack) 
    { 
    BindImages(); 
    } 
} 
+0

我无法将BindImages保留在!IsPostPack中,它会影响其他功能。 – Rocky

+1

@Rocky - 在BindImages()方法的for循环之前从tb(DataTable对象)中删除所有行,或者实例化此方法中的DataTable对象。 – adatapost