作成日: 2023/06/28 最終更新日: 2024/01/22
文書種別
不具合
状況
修正済み
詳細
ボタン型セルやGcComboBox型セルのサイド ボタンを押下した際に、SheetView クラスの GetSelection メソッドが null を、GetSelections メソッドが 0 を返す場合があります。
この現象は以下のセル型で発生します。
- ButtonCellType:コマンドボタン型セル
- CheckBoxCellType:チェックボックス型セル
- ComboBoxCellType:コンボボックス型セル
- FilterBarCellType:フィルタバー型セル
- ListBoxCellType:リストボックス型セル
- MultiColumnComboBoxCellType (EditableプロパティがTrueの場合):マルチカラムコンボボックス型セル
- MultiOptionCellType:マルチオプション型セル
- SliderCellType:スライダー型セル
- GeneralCellType (DropDownButtonプロパティがTrueの場合):標準型セル
- GcComboBox:GcComboBox型セル
回避方法
Service Pack 3(v15.0.4803.2012/v15.3.0)で修正済み。
Service Pack 3を適用せずに対処する方法としては、FpSpread クラスのEnterCellイベントを用いて、SelectionCountが0の場合は選択範囲を追加することで回避できます。
Service Pack 3を適用せずに対処する方法としては、FpSpread クラスのEnterCellイベントを用いて、SelectionCountが0の場合は選択範囲を追加することで回避できます。
private void Form1_Load(object sender, EventArgs e)
{
// 回避策
fpSpread1.EnterCell += FpSpread1_EnterCell;
}
// 回避策
private void FpSpread1_EnterCell(object sender, EnterCellEventArgs e)
{
var sheet = fpSpread1.ActiveSheet;
if (sheet.SelectionCount == 0)
{
sheet.AddSelection(sheet.ActiveRowIndex, sheet.ActiveColumnIndex, 1, 1);
}
}