다음 코드 스 니펫이 있습니다. 정적이 아닌 메소드에서만 PbcTreeView
에 액세스 할 수 있으므로 Page_Load 중에 호출합니다. 그러나 setTreeView() 메서드는 b
개체에 액세스 할 수 없으므로 buildTreeView() 메서드를 호출 할 수 없습니다. (setTreeView()는 WebMethod 규칙에 따라 정적이어야하며 TreeView를 사용하기 때문에 buildTreeView는 정적 일 수 없습니다). 방법에 내가 가지고있는 b.buildTreeView()
과 비슷한 것을 어떻게 할 수 있습니까?정적 메서드로 (WebControl을 사용하는) 비 정적 메서드를 어떻게 호출합니까?
감사
protected void Page_Load(object sender, EventArgs e)
{
BuildPbcTree b = new BuildPbcTree(PbcTreeView);
}
[WebMethod]
public static void setTreeView()
{
b.buildTreeView(); //how do I do this??
}
public class BuildTree
{
TreeView Tree;
public BuildTree(TreeView t)
{
Tree = t;
}
public void buildTreeView() {...//implementation}
}
그렇게 할 수 없습니다. AJAX 메서드의 요점은 페이지 수명주기가 없다는 것입니다. – SLaks
@ SLaks 고마워요, 내가하려는 일에 대한 해결책으로 무엇을 제안 하시겠습니까? –
싱글 톤 클래스에서 BuildPbcTree를 포장해야합니다. http://www.dotnetperls.com/singleton –