0
데이터베이스 소스가있는 첨부 파일 데이터 그리드가 있습니다. 열은 다음과 같습니다.보기 | 파일 이름 | 풀다.링크 버튼을 사용하여 데이터를 제거하는 방법
링크 버튼을 클릭 할 때 데이터 행을 어떻게 제거합니까? 현재 데이터 행은 데이터 그리드에서만 삭제되지만 데이터베이스에서는 삭제되지 않습니다.
<dx:ASPxGridView ID="gvwAttachmentFileOld" runat="server" KeyFieldName="Id" Width="520px" OnLoad="gvwFileAttachmentOld_Load" OnRowCommand="gvwAttachmentFileOld_RowCommand1">
<Columns>
<dx:GridViewDataTextColumn ReadOnly="True" VisibleIndex="0" Caption="Action" Width="50px">
<DataItemTemplate>
<asp:LinkButton ID="btnDownloadGridOld" runat="server" Text="View" OnClick="btnDownloadGridOld_Click"></asp:LinkButton>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="Id" FieldName="Id" Visible="false" VisibleIndex="1"></dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="File Name" FieldName="FileName" Width="450px"></dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn ReadOnly="True" VisibleIndex="4" Caption="Action" Width="50px">
<DataItemTemplate>
<asp:LinkButton ID="btnHapusItemGridOld" runat="server" Text="Remove" CommandName="RemoveRow" CommandArgument='<%# DataBinder.Eval(Container, "DataItem.Id") %>'></asp:LinkButton>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
</Columns>
</dx:ASPxGridView>
protected void gvwAttachmentFileOld_RowCommand1(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewRowCommandEventArgs e)
{
if (e.CommandArgs.CommandName == "RemoveRow")
{
DataTable dtAttOld = (DataTable)Session["dtOld"];
for (int i = 0; i < gvwAttachmentFileOld.VisibleRowCount; i++)
{
var id = e.CommandArgs.CommandArgument;
string idx = Convert.ToString(id);
DataRow[] dr = dtAttOld.Select(String.Format("Id = '{0}'", String.IsNullOrEmpty(idx) ? "0" : idx));
if (dr != null)
{
dtAttOld.Rows.Remove(dr[0]);
dtAttOld.AcceptChanges();
}
}
Session["dtOld"] = dtAttOld;
LoadGridAttachment();
}
}
당신은'LoadGridAttachment'를 제공 할 수 있습니까? – Grundy