2017-11-10 26 views
0

두 개의 텍스트 상자를 데이터 테이블의 데이터와 비교하고이 비교 작업을 사용하여 데이터 테이블을 필터링하려고합니다.필터링 데이터 테이블에 사용할 텍스트 상자 비교 C#

textbox1.text>x>textbox1.text 

내가 텍스트 값과 일치하는 값을 얻기 위해 문자열 형식 내부 "Like"연산자를 사용했다 : 나는 모든 데이터를 한 x 값이 (행과 열을) 보여주고 싶은 예를 들어

dv.RowFilter = string.Format("Type Like '%{0}%' and Gain Like" + 
      "'%{1}%'" + 
      "and Year Like'%{2}%' and MotorPower Like '%{3}%'" + 
      "and Profit Like '%{4}%'", textBoxType .Text,textBoxGain.Text 
      , textBoxYear.Text, textBoxBiggerthan.Text, textBoxKar.Text); 
dataGridView1.DataSource = dv; 

내가 다른 입력 텍스트 상자가 textBoxSmallerthan.Text를 불렀다 : -box 완전히하지만 특정 문제에 관한 내 코드는 필요한 범위 필터링 작업 여기

할 수 없었다내가 textBoxBiggerthan.TexttextBoxSmallerthan.Text

답변

0

문서 here 사이에 데이터 테이블 (DataGridView에)에 MotorPower 컬럼에 대한 내 범위를 만들고 싶어은 숫자가 작은 따옴표 업체와 함께 포장 할 필요가 없습니다 보여줍니다. 그래서 형식은 다음과 같습니다

Columnname < Number

그래서 최종 필터는 다음과 같이해야한다 :

dv.RowFilter = string.Format("Type Like '%{0}%' and Gain Like" + 
      "'%{1}%'" + 
      "and Year Like'%{2}%' and MotorPower > {3} and MotorPower < {4}" + 
      "and Profit Like '%{4}%'", textBoxType .Text,textBoxGain.Text 
      , textBoxYear.Text, textBoxSmallerthan.Text, textBoxBiggerthan.Text, textBoxKar.Text); 
dataGridView1.DataSource = dv; 
+0

미안하지만, 그 코드가 작동하지 않았다. "문자열이 유효한 DateTime으로 인식되지 않았습니다." – utdlegend

+0

문자열을 유효한 Datetime으로 포맷해야합니다. 링크의 예는 m/d/y 형식입니다 – Scrobi

+0

범위 구성 요소를 datetime으로 변환하려고했지만 동일한 오류 메시지가 표시되었습니다. – utdlegend