2012-03-08 2 views
0

XML 파일에서 데이터를 읽음으로써 채워지는 datagridview가 있습니다. datagridview에는 module, description, deadline 및 priority 열이 있습니다. 최종 기한 열의 형식은 다음과 같습니다. 2012 년 2 월 12 일에 XML 파일에 문자열로 저장됩니다.2 datetimepickers 사이의 datagridview 마감 기한 행

다음 DGV에는 startDate 및 endDate라는 두 datetimepickers가 있습니다.

사용자가 시작 및 종료 날짜를 선택한 다음 필터 버튼을 누릅니다. DGV가 이러한 작업을 수행하면 마감일 열이 시작일과 종료일 사이에있는 행만 표시됩니다.

나는 이것이 비교적 간단하다고 생각했지만 변환하는 데 문제가 있다고 생각합니다. 필터 버튼을 누르면 else 문이 시작됩니다.

내가 지금까지 가지고있는 코드는 다음과 같습니다. 약간 혼란 스럽다면 미안 해요.

private void scheduleButton_Click(object sender, EventArgs e) 

    { 

    DateTimePicker startDate = new DateTimePicker(); 
     DateTimePicker endDate = new DateTimePicker(); 
     String startDateConverted = Convert.ToString(startDate.Value); 
     String endDateConverted = Convert.ToString(endDate.Value); 

     foreach (DataGridViewRow dr in TaskTable2.Rows) 
     { 
      String deadlineRow = dr.Cells["Deadline"].Value.ToString(); 
      if (startDateConverted<= deadlineRow && deadlineRow<= endDateConverted) 
      { 
       MessageBox.Show("Display Row"); // display filtered rows here. 
      } 
      else 
      { 
       MessageBox.Show("Please ensure start date is set before end date and that there is a task saved between the dates you selected."); 
      } 
     } 
    } 

문이 필터링 된 행을 표시하지만 또한 코딩하는 방법을 잘 모르겠어요 어떻게되어야하는 경우의 코드.

누구든지 내 코드를 수정하고이 문제를 해결할 수 있다면 크게 감사하겠습니다. 당신

if(starttime<= deadline && deadline<= endtime) 

답변

1

;

with MessageBox.Show (dr.ToString()); 이 TaskTable2

+0

덕분에 나에게 당신의 코드를 제공 작동하지 않을 경우

, 내가 편집 한 문 – Rob

+0

난 여전히 다른 날짜를 비교하는 문제가있는 경우. 시작 날짜와 종료 날짜는 날짜/시간 형식으로되어 있으며 어떤 이유로 든 현재 시간의 값을 갖습니다. 시작 날짜와 끝 날짜를 비교해야하는 DeadlineRow는 '2012 년 3 월 12 일'등의 형식으로 된 문자열입니다. 비교할 수있는 날짜를 만드는 방법에 대한 아이디어는 무엇입니까 ?? – Rob

+0

DateTime.Now와 비교하고 여기에서 논리를 파생 하시겠습니까? – Andrew

0

경우 것이 MessageBox.Show ("디스플레이 행")를 대체하기위한