2011-02-08 4 views
0

웹 컨트롤이있는 asp.net 페이지가 있습니다. 이 웹 컨트롤은 트 리뷰, 텍스트 상자 및 버튼을 표시합니다. 내가를 Page_Load에서 할 트 리뷰에 대한asp.net 3.5 포스트 백 후에 Treeview가 비어 있습니다.

:

if (!Page.IsPostBack) { 
    BindTreeView(); 
} 

이 내 트 리뷰의 정의입니다 :

<asp:TreeView ID="TvwData" runat="server" 
     BackColor="White" ShowCheckBoxes="Leaf" Width="99%" 
     ExpandDepth="3" AutoGenerateDataBindings="false" 
     onselectednodechanged="TvwData_SelectedNodeChanged" 
     EnableViewState="true" 
     > 

트 리뷰가 올바르게 표시됩니다. 내가 제출 버튼을 클릭하면

그러나, 다음과 같은 상황이 발생합니다

  1. 페이지 다시로드는, 텍스트 상자 여전히 OK 내 텍스트를 표시합니다.
  2. 내 트 리뷰에 데이터가 전혀 표시되지 않습니다.
  3. 디버깅 할 때 TvwData.CheckedNodes에는 데이터가 포함되어 있지 않지만 트리 뷰 항목이 선택되어 있는지 확인합니다.

저는 주요 ASP.NET 포럼의 솔루션을 찾기 위해 최선을 다했지만 지금은 우둔합니다.

미리 감사드립니다.

+0

BindTreeView()도 표시 – naveen

+0

제출 단추에 대한 특정 코드가 있습니까? 그렇다면 게시하십시오. – SiN

+0

페이지 지시어가 설정되어 있는지 확인한 후 EnableViewState = "true" –

답변

2

다음 시도 :

protected override void OnInit(EventArgs e) 
    { 
     base.OnInit(e); 
     BindTreeView();   
    } 

을 또한 등) (BindTreeView 제거; Page_Load에서.

+0

안녕하세요. 이전 게시물 인 것을 알고 있지만 방금 만났습니다. 그것은 제가 똑같은 문제가 있다는 것뿐입니다. 당신의 대답은 그것을 완전히 해결하는 것 같습니다. OnInit에서 바인딩을 수행해야하는 이유를 설명하고 Page_Load에서 작동하지 않습니까? 감사. –

관련 문제