作成日: 2018/07/10 最終更新日: 2018/07/10
文書種別
使用方法
詳細
チェック動作を変更する機能は用意されていませんが、CellClickイベントとCellDoubleClick イベントで独自の実装を行うことでダブルクリックでのオン/オフ切り替えを実現することができます。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' チェックボックス型セルの設定
FpSpread1.ActiveSheet.Columns(0).CellType = New FarPoint.Win.Spread.CellType.CheckBoxCellType
End Sub
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' クリックでの変更をキャンセルする
If e.Column = 0 Then
e.Cancel = True
FpSpread1.ActiveSheet.ActiveColumnIndex = e.Column
FpSpread1.ActiveSheet.ActiveRowIndex = e.Row
End If
End Sub
Private Sub FpSpread1_CellDoubleClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellDoubleClick
' ダブルクリックでチェックの変更を行う
If e.Column = 0 Then
e.Cancel = True
If Not IsNothing(FpSpread1.ActiveSheet.GetValue(e.Row, e.Column)) AndAlso CType(FpSpread1.ActiveSheet.GetValue(e.Row, e.Column), Boolean) Then
FpSpread1.ActiveSheet.SetValue(e.Row, e.Column, False)
Else
FpSpread1.ActiveSheet.SetValue(e.Row, e.Column, True)
End If
End If
End Sub
' チェックボックス型セルの設定
FpSpread1.ActiveSheet.Columns(0).CellType = New FarPoint.Win.Spread.CellType.CheckBoxCellType
End Sub
Private Sub FpSpread1_CellClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellClick
' クリックでの変更をキャンセルする
If e.Column = 0 Then
e.Cancel = True
FpSpread1.ActiveSheet.ActiveColumnIndex = e.Column
FpSpread1.ActiveSheet.ActiveRowIndex = e.Row
End If
End Sub
Private Sub FpSpread1_CellDoubleClick(sender As Object, e As CellClickEventArgs) Handles FpSpread1.CellDoubleClick
' ダブルクリックでチェックの変更を行う
If e.Column = 0 Then
e.Cancel = True
If Not IsNothing(FpSpread1.ActiveSheet.GetValue(e.Row, e.Column)) AndAlso CType(FpSpread1.ActiveSheet.GetValue(e.Row, e.Column), Boolean) Then
FpSpread1.ActiveSheet.SetValue(e.Row, e.Column, False)
Else
FpSpread1.ActiveSheet.SetValue(e.Row, e.Column, True)
End If
End If
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
// チェックボックス型セルの設定
fpSpread1.ActiveSheet.Columns[0].CellType = new FarPoint.Win.Spread.CellType.CheckBoxCellType();
}
private void FpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
{
// クリックでの変更をキャンセルする
if (e.Column == 0)
{
e.Cancel = true;
fpSpread1.ActiveSheet.ActiveColumnIndex = e.Column;
fpSpread1.ActiveSheet.ActiveRowIndex = e.Row;
}
}
private void FpSpread1_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
{
// ダブルクリックでチェックの変更を行う
if(e.Column==0)
{
e.Cancel = true;
if (fpSpread1.ActiveSheet.GetValue(e.Row, e.Column) != null && (bool)fpSpread1.ActiveSheet.GetValue(e.Row, e.Column))
{
fpSpread1.ActiveSheet.SetValue(e.Row, e.Column, false);
}
else
{
fpSpread1.ActiveSheet.SetValue(e.Row, e.Column, true);
}
}
}
{
// チェックボックス型セルの設定
fpSpread1.ActiveSheet.Columns[0].CellType = new FarPoint.Win.Spread.CellType.CheckBoxCellType();
}
private void FpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
{
// クリックでの変更をキャンセルする
if (e.Column == 0)
{
e.Cancel = true;
fpSpread1.ActiveSheet.ActiveColumnIndex = e.Column;
fpSpread1.ActiveSheet.ActiveRowIndex = e.Row;
}
}
private void FpSpread1_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
{
// ダブルクリックでチェックの変更を行う
if(e.Column==0)
{
e.Cancel = true;
if (fpSpread1.ActiveSheet.GetValue(e.Row, e.Column) != null && (bool)fpSpread1.ActiveSheet.GetValue(e.Row, e.Column))
{
fpSpread1.ActiveSheet.SetValue(e.Row, e.Column, false);
}
else
{
fpSpread1.ActiveSheet.SetValue(e.Row, e.Column, true);
}
}
}
旧文書番号
83031