비슷한 방법으로 여러 GridView가있는 aspx 웹 응용 프로그램이 있습니다. 내 생각은 재사용 가능한 메서드가있는 "도우미"클래스를 만드는 것이 었습니다. 내 질문은 그 원격 클래스 메서드를 활용하는 가장 좋은 방법은 무엇입니까?GridView 이벤트에 원격 메소드 추가
프론트 엔드는이 같은 class.method 동의하지 않습니다 내가를 Page_Load에 처리기를 부착 할 때
이<asp:GridView runat="server" ID="myGridView" ... OnSorting="myClass.reusableMethod"
비주얼 스튜디오 나에게 어떤 컴파일 오류를 포기하지 않았다,하지만 내 말은 런타임 오류가 발생했습니다 GridView는 이벤트를 발생 시키려고 시도했지만 거기에 없었습니다.
if (!IsPostBack)
{
myGridView.Sorting += myClass.reusableMethod;
}
최종적인 방법은 작동하지만 반발을 일으키는 것 같습니다. 페이지에서 백엔드 메소드를 정상적으로 만들었지 만 원격 메소드에 대한 호출로 유일한 라인을 가지는 것
public void myGridView_Sorting(object sender, GridViewSortEventArgs e)
{
myClass.reusableMethod();
}
를 사용할 수 있습니까? 왜 그게 효과가 없을까요? 아니면 gridview가 포스트 백에서 핸들러를 잃어 버리는가? 따라서 코드는 다시 게시 후에 처리기를 다시 추가하지 않습니까? – toadfromgrove
예. 그러나 이벤트를 동적으로 바인딩하기 때문에 모든 페이지로드시에이를 수행해야합니다. 그렇지 않으면 PostBack에서 손실됩니다. 그리고 그것이 분실되면 그것은 촉발하지 않을 것입니다. – VDWWD
좋아, 나는 그것이 포스트 백에 할당을 잃을 것이라는 것을 몰랐다. 이제는 의미가 있습니다. 고맙습니다! – toadfromgrove