OK,이 기능은 꽤 좋았지 만 뛰어난 ASP 기술을 가진 사람의 도움이 필요합니다. 나는 SQL 쿼리의 결과로 ASP 테이블을 채우기 위해 코드를 사용하고 있습니다. 읽기 전용 값은 일부 표 셀의 .text
에 저장되는 반면 읽기/쓰기 값은 텍스트 상자 컨트롤의 .text
(동적으로 만들어지고 표 셀에 추가됨)에 저장됩니다.ASP .Net - 동적으로 생성 된 텍스트 상자 변경/업데이트
첫 번째로드에서는 제대로 작동합니다 . 페이지가 다른 쿼리로 다시로드되면 (예 : 사용자가 다른 열을 선택하여 정렬하려면) 테이블 셀 값이 올바르게 채워지지만 텍스트 값은 변경되지 않습니다. 쿼리를 수행하기 전에 table.rows.clear()
에 던져 넣으면이 문제가 해결되지 않는 것 같습니다.
더 많은 정보는 :
- 나는
table.findcontrol()
를 사용하여 모든textbox.text
값을 닦아 방법을 만들었습니다. 버튼에 연결되면이 메서드는 speccontext (findcontrol이 텍스트 상자를 찾고/업데이트 할 수 있음을 나타냅니다.)에 영향을 미치지 만 페이지가 다시로드되는 경우 영향을받는 모든 텍스트 상자가 비어있게됩니다. 페이지로드에 배치되면 메소드는 아무 작업도 수행하지 않습니다 (텍스트 상자는 이전 값을 유지합니다). 디버그 모드에서 findcontrol은 버튼에 사용될 때 값을 가져 오지만, pageload에 추가되면 null이됩니다. 나는table.rows.clear()
이 주석 처리되고 주석 처리되지 않은 상태로이 작업을 수행했다. - 나는 또한 모든 코드를
oninit
에 던집니다. 이것은 큰 차이를 보이지 않는 것 같습니다.
'Page_Load' 이벤트가 어떤 모양인지 알면 도움이됩니다. 모든로드 후에 텍스트 상자를 다시 만들지 않는다는 것을 의미합니다. – CAbbott