|
|
### **■ FilterCriteria, FilterString**
|
|
|
## **■ FilterCriteria, FilterString**
|
|
|
그리드에 필터를 적용하려면 DataControlBase.FilterCriteria 속성 또는 DataControlBase.FilterString 속성을 사용하면 된다.
|
|
|
이 두 속성은 그리드의 열에 각각 적용되는 조건들로 구성된 그리드의 필터를 명시하고 있다.
|
|
|
``` cs
|
... | ... | @@ -20,11 +20,12 @@ grid.FilterString = "([OrderDate] < #1/1/1995# AND [UnitPrice] < 10)" + |
|
|
" OR ([OrderDate] >= #1/1/1996# AND [UnitPrice] >= 100)";
|
|
|
```
|
|
|
<br>
|
|
|
### **■ SetAutoFilterValue, GetAutoFilterValue, CustomRowFilter**
|
|
|
#### **GetAutoFilterValue & SetAutoFilterValue**
|
|
|
## **■ SetAutoFilterValue, GetAutoFilterValue, CustomRowFilter**
|
|
|
### **1. GetAutoFilterValue & SetAutoFilterValue**
|
|
|
TableView의 ShowAutoFilterRow 속성을 True로 지정하면 자동필터행를 사용할 수 있다.
|
|
|
|
|
|
<br>
|
|
|
**AutoFilterValue**
|
|
|
자동필터행을 사용하면 사용자가 텍스트를 행에 직접 입력하여 즉석에서 데이터를 필터링 할 수 있다.
|
|
|
코드에서 이 작업을 수행하려면 ColumnBase.AutoFilterValue 속성을 사용하면 된다.
|
|
|
<br>
|
... | ... | @@ -53,12 +54,12 @@ ex) 그림1-1에서 Name열의 AutoFilterValue는 null이고, Age열의 AutoFilt |
|
|
3. GetAutoFilterValue(this, op)
|
|
|
└ 이 함수를 Overried해서 정의하면 그림 1-1의 Age에 표시되는 "2"라는 값을 Customizing 해줄 수 있다."
|
|
|
<br>
|
|
|
<br>
|
|
|
#### **CreateAutoFilterCriteria**
|
|
|
|
|
|
### **2. CreateAutoFilterCriteria**
|
|
|
SetAutoFilterValue method 호출 순서 5번째에서 호출된다.
|
|
|
<br>
|
|
|
<br>
|
|
|
#### **CustomRowFilter**
|
|
|
### **3. CustomRowFilter**
|
|
|
데이터 행을 수동으로 필터링 할때 사용되는 이벤트로 데이터 소스에 있는 특정 행을 숨기거나, 보이게 할 때 사용된다.
|
|
|
Automatic Filter Row와 열의 filter dropdown에 사용되는 필터 기준보다 우선으로 적용된다.
|
|
|
이 이벤트는 데이터 소스의 각 레코드에 대해 발생한다.
|
... | ... | @@ -74,7 +75,7 @@ private void grid_CustomRowFilter(object sender, RowFilterEventArgs e) |
|
|
}
|
|
|
```
|
|
|
<br>
|
|
|
#### **FilterString, FilterCriteria 동기화**
|
|
|
### **4. FilterString, FilterCriteria 동기화**
|
|
|
FilterString과 FilterCriter는 Changed 이벤트를 통해서 서로 동기화 된다.
|
|
|
``` cs
|
|
|
void OnFilterCriteriaChanged()
|
... | ... | |