MESCIUS SPREAD for ASP.NET 10.0J
コードによるフィルタリング

ユーザー操作によるフィルタリングだけではなく、コードからフィルタリングの実行および解除を行うことが可能です。

設定方法

SheetView クラスAutoFilterMode プロパティを使用してフィルタリングの種類を設定します。RowFilter プロパティ に非表示フィルタまたはスタイルフィルタオブジェクトを設定し、フィルタ結果の表示方法や、フィルタリングを行う列を指定します。

フィルタリングを実行するには、AutoFilterColumn メソッドを呼び出します。

フィルタリングを解除するには、AutoFilterReset メソッドを実行します。

サンプルコード

次のサンプルコードは、Button1のクリックでフィルタリングを実行し、Button2のクリックでフィルタリングを解除する例です。

protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack) return;

    FpSpread1.ActiveSheetView.Cells[0, 0].Value = "apple";
    FpSpread1.ActiveSheetView.Cells[1, 0].Value = "orange";
    FpSpread1.ActiveSheetView.Cells[2, 0].Value = "pear";

    // 1列目に非表示フィルタを設定します。
    FarPoint.Web.Spread.FilterColumnDefinition fcd = new FarPoint.Web.Spread.FilterColumnDefinition(0);
    FarPoint.Web.Spread.HideRowFilter hf = new FarPoint.Web.Spread.HideRowFilter(FpSpread1.ActiveSheetView);
    hf.AddColumn(fcd);
    FpSpread1.ActiveSheetView.RowFilter = hf;
}

protected void Button1_Click(object sender, EventArgs e)
{
    // クライアント側の変更を確定します。
    FpSpread1.SaveChanges();

    // 1列目を"orange"でフィルタリングします.
        
    FpSpread1.ActiveSheetView.AutoFilterColumn(0, "orange"); 
}

protected void Button2_Click(object sender, EventArgs e)
{
    // クライアント側の変更を確定
    FpSpread1.SaveChanges();

    // 1列目のフィルタリングをリセットします
    FpSpread1.ActiveSheetView.AutoFilterReset(0); 
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If IsPostBack Then
        Return
    End If

    FpSpread1.ActiveSheetView.Cells(0, 0).Value = "apple"
    FpSpread1.ActiveSheetView.Cells(1, 0).Value = "orange"
    FpSpread1.ActiveSheetView.Cells(2, 0).Value = "pear"

    ' 1列目に非表示フィルタを設定します。
    Dim fcd As New FarPoint.Web.Spread.FilterColumnDefinition(0)
    Dim hf As New FarPoint.Web.Spread.HideRowFilter(FpSpread1.ActiveSheetView)
    hf.AddColumn(fcd)
    FpSpread1.ActiveSheetView.RowFilter = hf
End Sub

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    ' クライアント側の変更を確定します。
    FpSpread1.SaveChanges()

    ' 1列目を"orange"でフィルタリングします。
    FpSpread1.ActiveSheetView.AutoFilterColumn(0, "orange") 
End Sub
        
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
    ' クライアント側の変更を確定します。
    FpSpread1.SaveChanges()

    ' 1列目のフィルタリングをリセットします。
    FpSpread1.ActiveSheetView.AutoFilterReset(0)
End Sub

関連トピック

 

 


© MESCIUS inc. All rights reserved.