2012-02-01 3 views
1

삽입 모드에서 숨겨진 필드가있는 하위 요소의 detailsView를 사용하여 부모의 ID를 저장하는 .NET에서 일부 데이터베이스 조작을 수행하고 있습니다. 그것은으로 채워 것 : 이것은 처음에는 잘 작동changeMode에서 컨트롤이 손실 되었습니까?

dvChild.ChangeMode(DetailsViewMode.Insert); 
HiddenField hdParentId = (HiddenField) FindControlRecursive(Page, "hdParentId"); 
hdParentId.Value = parent.ParentId; 

- 부모에 대한 사용자 검색, 검색이 부모 ID를 반환, 자식 편집기 모드를 삽입 할 뒤집히고. 포스트 백에 나는 원래 삽입 반향 dvChild를 사용하는

dvChild.ChangeMode(DetailsViewMode.ReadOnly); 

를 호출합니다.

하지만 사용자가 다시 게시 페이지에서 검색을 실행하면 hdParentId를 찾으려고하면 페이지가 렌더링 될 때 컨트롤 자체가 표시되지만 null이 반환됩니다. 무슨 일이야?

FindControlRecursive는 중첩 컨트롤을 드릴 다운하는 인기있는 해킹입니다. dvChild.FindControl ("hdParentId")도 예상대로 비어 있습니다.

답변

1

음. 나는 어리 석다. 나는 바로 모드 변경 후

dvChild.DataBind() 

전화를 프로그래밍 방식으로 사용할 수있는 모든 변형 모드 컨트롤을 보장해야합니다.

관련 문제