2012-03-23 2 views
1

이것은 아마도 쉬운 해결책 일 수 있지만 주위를 둘러 볼 수는 없습니다.동적으로 생성 된 페이지 수를 계산하십시오.

동적으로 생성 된 페이지가 있고 LINQ 문 (예 :)을 통해 생성해야하는 페이지가 있습니다. (이것은 questionCount가 호출 된 위치를 표시하고 _labelQuestionCount로 설정 한 업데이트 코드입니다. 동적 페이지의 모든 컨트롤을 모든 페이지를 생성하고 설정 dynamicaly 큰 방법) 다음

using (DataClasses1DataContext db = new DataClasses1DataContext()) 
{ 
    int questionsCount = (from q in db.vw_Custom_SelectQuestionnaireQuestions   
    select q.tbl_QuestionnaireQuestion_Description).Count(); 
    _labelQuestionCount = questionsCount.ToString(); 
} 

    Label labelCount = new Label(); 
    labelCount.ForeColor = Color.Blue; 
    labelCount.Location = new System.Drawing.Point(35, 290); 
    labelCount.Size = new System.Drawing.Size(150, 30); 
    labelCount.Tag = _dataSetRadioButtons.Tables["tbl_QuestionnaireAnswer_Score"]; 
    labelCount.Text = String.Format("Question Count: {0}", _labelQuestionCount); 

에서 조각은 글로벌 VAR이다 : 나는 동적 통해 클릭으로

string _labelQuestionCount; 

그 이유는,이다 만든 페이지, 나는 "카운트하고 싶습니다. "그래서"내 단추 "이벤트에서 x 페이지가 최종 페이지이고 다른 코드를 탐색 할 수 있음을 알게 될 것입니다.

다음 버튼

현재 코드는 다음과 같습니다 당신이 볼 수 있듯이 (업데이트)

 void nextButton_Click(object sender, EventArgs e) 
    { 
     bool c = IsChecked(_form); 

     if (c == true) 
     { 
      var w = Convert.ToInt32(_labelQuestionCount); 
      _form.Dispose(); 
      w--; 

      if (w == 0) 
      { 
       //go to another page or do something else 
      } 
     } 
     else 
     { 
      MessageBox.Show("You must select at least one."); 
     } 
    } 

나는 시도하고 전역 변수의 값 (예를 들어 __labelQuestionCount)을 시도하고 도달 할 때까지 "아래"를 계산 0 다른 것을하십시오. 내 페이지를 동적으로 생성되기 때문에이 사람이 바라는 점이나 제안이 크게 감사하겠습니다 도움이 될, 그래서 만약 이것에 대해 갈 길을 잘못은 아마 0

그러나, 나는 결코 얻을 수 없다. 더 하나가 이미 존재하지 않는 경우

종류와 관련, geoNeo

+0

친숙한 제안으로, 단문 문자 변수를 사용하지 말고 참이 아닌지를 테스트 할 필요가 없습니다. 즉,'bool formIsChecked = IsChecked (_form);라고 쓰면, if (formIsChecked) {var labelCount = ...'자신과 다른 사람들에게 더 읽기 쉽습니다. – Abel

+0

미안하지만 그냥 테스트 응용 프로그램을 abel -하지만 제안은 미래의 게시물에 대한 염두에 보관 해 주셔서 감사합니다 :) –

답변

1

다음 버튼 클릭 이벤트 내에서 감소 된 값 (w--)을 전역 변수 _labelQuestionCount에 재 할당해야합니다. 다음을 클릭하면 _labelQuestionCount가 모든 클릭에 대해 동일하게 유지되기 때문입니다.

+0

안녕하세요 Vetrivel하십시오 감소 된 값을 지정하는 것에 대해 자세히 설명해 줄 수 있습니까? - fanx : D –

0

는 I는 Page 일부 int PageID에 할당하는 방법에 대한 생각. 그리고 기본 페이지 수를 복구 할 때 페이지 수를 계산하지 않고 최신 페이지의 PageID으로 가져올 수 있습니다. button_click

당신은 PageID revoer, 클릭 (가 변경되었습니다 될 수 있습니다 원인, 새로운 페이지가 colleciton 추가되었습니다)의 순간에 colleciton 의 마지막 요소에 대해 다시 물어, 페이지는 swicthing 있는지 확인 to는 동일한 ID를 가지고 있습니다. 그렇다면,해야 할 일을하십시오.

+0

안녕하세요 Tigran - 회신 해 주셔서 감사합니다 우리가 입력으로 모든 제안을 구현하려고 해요 - 팬 : D –

관련 문제