ASP.NET + GRIDVIEW + COMMANTFIELD로서 템플릿 필드
-
22-07-2019 - |
문제
그리드 뷰가 있습니다. 내 그리드 뷰에는 "옵션"열이 포함 된 열이 있습니다. 이 열에는 기존 CommandField 옵션 (편집, 삭제 등)이 포함됩니다. 명령 필드를 사용할 때 작동 할 코드 설정이 있습니다. 그러나 명령 필드를 템플릿 필드로 변환해야하므로 사용자 정의 서식을 수행해야합니다.
내 질문은 템플릿 필드의 다양한 LinkButton 요소에서 OnrowCommand, OnRowediting, OnRowDeleting 및 OnRowupdating 이벤트를 어떻게 트리거해야합니까?
고맙습니다!
해결책
템플릿 열 내부의 LinkButton의 명령 이름 속성을 편집하기 위해 '편집', '삭제'삭제 및 업데이트를 위해 '업데이트'로 설정하기 만하면됩니다. 이렇게하면 GridView Rowediting, Rowdeleting 및 Rowupdating 이벤트가 각각 트리거됩니다. RowCommand 이벤트를 트리거하려면 GridView 컨트롤의 OnrowCommand 속성을 설정해야합니다.
<asp:GridView ID="GridView1" runat="server" OnRowCommand="GridView1_RowCommand"
OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"
OnRowUpdating="GridView1_RowUpdating">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<!--To fire the OnRowEditing event.-->
<asp:LinkButton ID="lbEdit" runat="server" CommandName="Edit"
Text="Edit">
</asp:LinkButton>
<!--To fire the OnRowDeleting event.-->
<asp:LinkButton ID="lbDelete" runat="server" CommandName="Delete"
Text="Delete">
</asp:LinkButton>
<!--To fire the OnRowUpdating event.-->
<asp:LinkButton ID="lbUpdate" runat="server" CommandName="Update"
Text="Update">
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
다른 팁
나는 같은 문제가 있었다.
편집을 위해 다음을 수행했습니다.
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="EditButton"
runat="server"
CommandName="Edit"
Text="Edit" />
</ItemTemplate>
<EditItemTemplate>
<asp:LinkButton ID="UpdateButton"
runat="server"
CommandName="Update"
Text="Update" />
<asp:LinkButton ID="Cancel"
runat="server"
CommandName="Cancel"
Text="Cancel" />
</EditItemTemplate>
</asp:TemplateField>
이를 통해 업데이트 및 취소 버튼을 표시/숨길 수 있습니다.
삭제는 다음을 사용했습니다.
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="DeleteButton"
Text="Delete"
CommandName="Delete"
runat="server" />
</ItemTemplate>
</asp:TemplateField>
속성의 열을 클릭하고 추가하십시오 CommandField(Edit,update,Cancel)
"이 필드 변환 템플릿 필드"를 클릭하십시오.
Swich는 소스를 소집하고 자동으로 코드를 추가 할 것입니다.
제휴하지 않습니다 StackOverflow