'宣言 Public ReadOnly Property ColumnFilters As ColumnFiltersCollection
public ColumnFiltersCollection ColumnFilters {get;}
これらの列フィルターを有効にするためには、UltraGridOverride.RowFilterMode を AllRowsInBand に設定する必要があります。SiblingRowsOnly(デフォルトではこの値に解決されます)に設定した場合は、RowsCollectionの RowsCollection.ColumnFilters に含まれる列フィルターが、対応する行コレクションに対して作用します。
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinGrid Private Sub Button10_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button10.Click Dim band As UltraGridBand = Me.UltraGrid1.DisplayLayout.Bands(2) ' Set AllowRowFiltering to true to allow the user to filter rows. This is not ' necessary for filtering rows through code. band.Override.AllowRowFiltering = DefaultableBoolean.True ' You can enable or disable row filtering on individual columns too. ' Column's setting have higher precedence for that column than the band's ' override settings. band.Columns("Phone").AllowRowFiltering = DefaultableBoolean.False ' Set the RowFilterMode off the override to AllRowsInBand so that the ' ultragrid makes use of UltraGridBand.ColumnFilters. band.Override.RowFilterMode = RowFilterMode.AllRowsInBand ' Clear any previous filters on that column. band.ColumnFilters("Unit Price").FilterConditions.Clear() ' Add two conditions one that requires value be greater than 5 and another ' that requires that the value be less than 10. Also we want to And these ' conditions because the value must satisfy both conditions. To do that ' set the LogicalOperator on the ColumnFilter of that column to And. band.ColumnFilters("Unit Price").FilterConditions.Add(FilterComparisionOperator.GreaterThan, 5) band.ColumnFilters("Unit Price").FilterConditions.Add(FilterComparisionOperator.LessThan, 10) band.ColumnFilters("Unit Price").LogicalOperator = FilterLogicalOperator.And End Sub
using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System.Diagnostics; private void button10_Click(object sender, System.EventArgs e) { UltraGridBand band = this.ultraGrid1.DisplayLayout.Bands[2]; // Set AllowRowFiltering to true to allow the user to filter rows. This is not // necessary for filtering rows through code. band.Override.AllowRowFiltering = DefaultableBoolean.True; // You can enable or disable row filtering on individual columns too. // Column's setting have higher precedence for that column than the band's // override settings. band.Columns["Phone"].AllowRowFiltering = DefaultableBoolean.False; // Set the RowFilterMode off the override to AllRowsInBand so that the // ultragrid makes use of UltraGridBand.ColumnFilters. band.Override.RowFilterMode = RowFilterMode.AllRowsInBand; // Clear any previous filters on that column. band.ColumnFilters["Unit Price"].FilterConditions.Clear( ); // Add two conditions one that requires value be greater than 5 and another // that requires that the value be less than 10. Also we want to And these // conditions because the value must satisfy both conditions. To do that // set the LogicalOperator on the ColumnFilter of that column to And. band.ColumnFilters["Unit Price"].FilterConditions.Add( FilterComparisionOperator.GreaterThan, 5 ); band.ColumnFilters["Unit Price"].FilterConditions.Add( FilterComparisionOperator.LessThan, 10 ); band.ColumnFilters["Unit Price"].LogicalOperator = FilterLogicalOperator.And; }