QnA
사용언어 (칠해주세요) => C# |
사용툴 (VS) : Microsoft visual Web Developer 2010 Express |
운영체제 (OS) : Windows7 |
상세언어(칠해주세요.) => ASP.NET AJAX |
안녕하세요~
궁금한게 있어서 글 남깁니다..
간략하게 프로그램에 대해 설명을 드리자면,
몇 개의 입력 값을 받아서 그 값으로 데이터베이스의 저장프로시저를 호출합니다.
프로시저가 반환하는 3개의 select문의 결과 테이블이 있는데 이를 DataSet 변수를 만들어
Tables[2] 이런식으로 해서 가져옵니다.
후에 DataRow 를 이용하여 arraylist에 테이블에 있는 특정 컬럼의 값들을 저장합니다.
StringBuilder를 이용하여 cs 파일내에 자바스크립트 코드를 넣습니다.
구글 라인차트에 값을 넣어줄 때 arraylist에 담겨있는 값들을 가져와서 넣어줍니다.
이 과정들은 값을 입력한 후에 버튼을 클릭했을 때 button_Click 이벤트를 발생시켜서 모두 처리하였습니다.
만들어야 하는 라인 차트가 4개인데 (모듈화를 잘 못해서..)
클릭 이벤트 내에 각 라인차트를 위한 arraylist 변수를 만들고 StringBuilder를 만들어서
4개의 자바스크립트 코드를 만들었습니다.
문제는..
이 차트들을 ajax TabContainer에 넣어서 탭 키를 이동해 가며 보여주고 싶은데
몇 개의 값들을 입력하고 조회 버튼을 누르면 바로 직전에 열려있었던 탭의 차트의 그래프만 제대로 그려지고
탭을 이동하여 다른 라인 차트로 넘어가면 나머지 3개의 라인차트는 라인은 보이는데 x축, y축이 보이지 않습니다.
↑ 이런 식으로 x축, y축에 아무것도 표시가 되지 않습니다.
그래서 TabContainer를 2개를 만들어 서로 다른 두개의 라인차트를 동시에 호출해 보니
둘다 잘 보입니다.(다른 탭으로 이동하면 똑같이 보이지 않습니다.)
설명이 정리가 잘 되었는지 모르겠습니다..
고수님들! 조언 부탁드립니다~!!!!!
첫댓글 탭을 이동시, 자바스크립트를 통해서 선택한 탭 안의 소스가 실행되도록 하는건 어떨런지요. 제가 알기론 tabcontrol 은 미리 전부 바인딩 하고 이를 히든 시킨다음에 특정 탭을 선택하면 감춘 화면을 보여주는걸로 압니다.
아... 위에 글이 이거랑 연결된거군요.. 음.. 맞아요 재운이가 말한대로 탭이 몇개든 미리 HTML을 다 만들어 놓는겁니다..그래서 탭을 이동하여도 보여주게 하실려면 Tab index 수 갯수만큼 페이지의 컨트롤을 다 미리 바인딩 시켜야 합니다.
검색햇을때 처음에 페이지 로딩했을댄의 처리 로직을 다시 반복해서 처리하게 만들면 될것 같습니다.
첫페이지 띄웠을때는 제대로 나온다는 조건하에요.
고맙습니다~! 덕분에 해결했습니다~!!! 짱입니다요~!! ^^