2014-01-13 2 views
-1

DataGridView에 대한 필터링 시스템을 만들고 필터링 목적으로 DataGridview의 각 헤더 아래에 텍스트 상자를 넣으려고합니다.DataGridview 헤더 아래에 텍스트 상자 행 추가

+0

귀하의 질문에 당신은 무엇을합니까?! – Amir

+0

@Amir, 그는이 효과를 얻는 방법을 묻습니다. 그리고 대답에 관해서는 헤더와 관련이 있어야합니다. (텍스트 상자를 추가 할 수있는 자신 만의 헤더 클래스) 또는 더티 트릭을 정렬 할 수 있습니다 (헤더를 더 크게 만들고, 크기를 늘리거나 , TextBox 컨트롤을 그 위에 놓으면, 수평 스크롤과 관련하여 문제가 발생할 것입니다.) 하나의 * 저렴한 * 가능성은'DataGridView' 위에 단 하나의'TextBox'를 갖는 것입니다. 다른 하나는 단지 (예를 들어) 열을 클릭하면 곧'TextBox'를 표시하는 것입니다 ... – Sinatr

+0

나는 그가 원하는 것을 알고 있지만 그/그녀의 질문은 매우 불분명하고 낮은 품질입니다. – Amir

답변

1

원하는 것을 "자동 필터 행"이라고하며, 각 열을 개별적으로 필터링 할 수있는 행이 상단에 있습니다.

Microsoft의 DataGridView로는 그렇게 할 수 없다고 생각합니다. 하지만 DevExpress Controls로 할 수 있습니다. Auto Filter Rows 링크를 확인하십시오.

평가판을 사용해 볼 수 있습니다.

어쨌든, 당신은 그리드 외부 텍스트 상자를 사용하여 전체 테이블을 필터링 할 수 있습니다

var Dt =(MyDataGridView.DataSource as DataTable) 

Dt.DefaultView.RowFilter = string.Format("Field = '{0}'", MyFilterTextBox.Text); 

을 도움이 되었기를 바랍니다.

0

enter image description here

당신은 세계로 텍스트 상자를 작성할 수 있으며이 된 DataGridView headercell을 클릭하면,이 텍스트 상자는 헤더 셀을 다룰 것입니다.

+1

코드 스크린 샷을 추가하지 마십시오. 코드 자체를 추가하십시오. – Andy

관련 문제