안녕하세요 존경하는 이여,동적으로 생성되는 격자보기에서 행을 삭제하는 방법은 무엇입니까?
나는의 GridView에 DataTable의에서 내가 PRODUCTNAME, productprice를 결합/추가하는 시스템 및 productquantity을 주문처럼 쇼핑 카트를 생성하고있다.
나는 선택한 행을 삭제하기 위해서만 gridview에 ImageButton을 추가했습니다.
또한 동적으로 생성 된 격자보기에서 행을 삭제할 수 없다는 것도 알고 있습니다. 그래서 DataTable (전체 프로세스 동안 정적 인 행)을 삭제하고 GridView를 사용하여 Data를 다시 바인딩하는 ImageButton Click 이벤트에 코드를 배치했습니다.
"hv는 이미"BTN_ADD TO CART_Clicked "에서 gridview를 사용하여 데이터를 바인딩합니다. 의 GridView 'gvorderlist가'처리되지 않은 이벤트 RowDeleting을 발사 :
<asp:GridView ID="gvorderlist" runat="server" CellPadding="4"
ForeColor="#333333" GridLines="None" AllowPaging="True" PageSize="5"
onpageindexchanging="gvorderlist_PageIndexChanging"
onrowcommand="gvorderlist_RowCommand">
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:TemplateField HeaderText="Cancel Order" ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="ImgbtnCancelOrder" runat="server" CausesValidation="false"
ImageUrl="~/images/cross.PNG" OnClientClick="Javascript: return confirm('Aap Chutiye hai');" CommandName="Delete"
CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
나는 말한다 오류를 얻고, 여기에
는protected void gvorderlist_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
int index = Convert.ToInt32(e.CommandArgument);
DataRow row = dt.Rows[index];
dt.Rows.Remove(row);
gvorderlist.DataSource = dt;
gvorderlist.DataBind();
}
}
내 코드이며, ASP 코드는 .
어떤 도움을 이해할 수있을 것이다... 은의 GridView의 속성은 대소 문자를 구분 당신에게
DataTable을 Datagridview에 바인딩하면 Datatable의 변경 사항이 DataGridview에 자동으로 반영됩니다. 버튼 클릭 이벤트에서 고유 한 열 값을 가져 와서 데이터 테이블에서 삭제합니다. –
PrakashVishwakarma, 당신은 내가 "delete button click event"에서 다시 gridview를 바인딩해야한다고 제안하려고합니까? – user3160395
imagebutton click 이벤트에서 행을 삭제하고자하는 행 인덱스를 검색 한 다음 위에서 언급 한 코드를 수행합니다 ... 실수가 있으면 안내해주세요 – user3160395