作成日: 2018/12/19 最終更新日: 2018/12/19
文書種別
使用方法
詳細
デフォルトの状態でショートカットキーはありませんが、ResetFilter()メソッドを呼び出すことでフィルタ状態を解除することは可能です。
以下のサンプルではShift+Ctrl+Lキーの入力マップにフィルタ解除機能を割り当てショートカットキーを実現しています。
◎サンプルコード(VB)
◎サンプルコード(C#)
以下のサンプルではShift+Ctrl+Lキーの入力マップにフィルタ解除機能を割り当てショートカットキーを実現しています。
◎サンプルコード(VB)
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' フィルタの設定
FpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.EnhancedContextMenu
FpSpread1.ActiveSheet.SetColumnAllowFilter(0, True)
' テスト用データの設定
For i As Integer = 0 To FpSpread1.ActiveSheet.RowCount - 1
FpSpread1.ActiveSheet.SetValue(i, 0, i Mod 5)
Next
' 入力マップの設定
FpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused).Put(New FarPoint.Win.Spread.Keystroke(Keys.L, Keys.Control Or Keys.Shift), "ResetFilter")
' アクションマップの設定
FpSpread1.GetActionMap().Put("ResetFilter", New ResetFilter())
End Sub
End Class
Public Class ResetFilter
Inherits FarPoint.Win.Spread.Action
Public Overrides Sub PerformAction(sender As Object)
' フィルタの解除
DirectCast(sender, FarPoint.Win.Spread.SpreadView).GetSheetView().RowFilter.ResetFilter()
End Sub
End Class
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' フィルタの設定
FpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.EnhancedContextMenu
FpSpread1.ActiveSheet.SetColumnAllowFilter(0, True)
' テスト用データの設定
For i As Integer = 0 To FpSpread1.ActiveSheet.RowCount - 1
FpSpread1.ActiveSheet.SetValue(i, 0, i Mod 5)
Next
' 入力マップの設定
FpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused).Put(New FarPoint.Win.Spread.Keystroke(Keys.L, Keys.Control Or Keys.Shift), "ResetFilter")
' アクションマップの設定
FpSpread1.GetActionMap().Put("ResetFilter", New ResetFilter())
End Sub
End Class
Public Class ResetFilter
Inherits FarPoint.Win.Spread.Action
Public Overrides Sub PerformAction(sender As Object)
' フィルタの解除
DirectCast(sender, FarPoint.Win.Spread.SpreadView).GetSheetView().RowFilter.ResetFilter()
End Sub
End Class
◎サンプルコード(C#)
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// フィルタの設定
fpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.EnhancedContextMenu;
fpSpread1.ActiveSheet.SetColumnAllowFilter(0, true);
// テスト用データの設定
for(int i = 0; i < fpSpread1.ActiveSheet.RowCount; i++)
{
fpSpread1.ActiveSheet.SetValue(i, 0, i % 5);
}
// 入力マップの設定
fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused).Put(new FarPoint.Win.Spread.Keystroke(Keys.L, Keys.Control | Keys.Shift), "ResetFilter");
// アクションマップの設定
fpSpread1.GetActionMap().Put("ResetFilter", new ResetFilter());
}
}
public class ResetFilter : FarPoint.Win.Spread.Action
{
public override void PerformAction(object sender)
{
// フィルタの解除
FarPoint.Win.Spread.SpreadView sv = (FarPoint.Win.Spread.SpreadView)sender;
sv.GetSheetView().RowFilter.ResetFilter();
}
}
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// フィルタの設定
fpSpread1.ActiveSheet.AutoFilterMode = FarPoint.Win.Spread.AutoFilterMode.EnhancedContextMenu;
fpSpread1.ActiveSheet.SetColumnAllowFilter(0, true);
// テスト用データの設定
for(int i = 0; i < fpSpread1.ActiveSheet.RowCount; i++)
{
fpSpread1.ActiveSheet.SetValue(i, 0, i % 5);
}
// 入力マップの設定
fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused).Put(new FarPoint.Win.Spread.Keystroke(Keys.L, Keys.Control | Keys.Shift), "ResetFilter");
// アクションマップの設定
fpSpread1.GetActionMap().Put("ResetFilter", new ResetFilter());
}
}
public class ResetFilter : FarPoint.Win.Spread.Action
{
public override void PerformAction(object sender)
{
// フィルタの解除
FarPoint.Win.Spread.SpreadView sv = (FarPoint.Win.Spread.SpreadView)sender;
sv.GetSheetView().RowFilter.ResetFilter();
}
}
旧文書番号
83479