ハロの外部記憶インターフェイス

そろそろ覚える努力が必要かも…

スプレッドのセル編集時にEnterキーイベントを取得する方法

スプレッドのセル編集時にEnterキーのイベントを取得し、別の処理を行う

//フォームロードイベント
private void Form1_Load(object sender, System.EventArgs e)
{
   fpSpread1.EditModePermanent = true;
    // 編集中セルの Enterキー押下による動作を無効とします。
   FarPoint.Win.Spread.InputMap inputmap1;
   inputmap1 = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
   inputmap1.Put(new FarPoint.Win.Spread.Keystroke(Keys.Enter, Keys.None), FarPoint.Win.Spread.SpreadActions.None);
}
//スプレッドの編集開始イベント
private void fpSpread1_EditModeOn(object sender, System.EventArgs e)
{
   // 編集モードONの時、KeyDownイベントを取得する
   fpSpread1.EditingControl.KeyDown += new System.Windows.Forms.KeyEventHandler (this.fpSpread1_KeyDown);
}
//スプレッドの編集終了イベント
private void fpSpread1_EditModeOff(object sender, System.EventArgs e)
{
   // 編集モードOFFの時、KeyDownイベントの関連付けを解除
   fpSpread1.EditingControl.KeyDown -= new System.Windows.Forms.KeyEventHandler (this.fpSpread1_KeyDown);
}
//キーダウンイベント
private void fpSpread1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
   if (e.KeyCode == Keys.Enter)
    {     Console.WriteLine("EnterキーによるKeyDown");
    }
}
  1. 参考URL:http://www.grapecity.com/japan/support/kb/detail.asp?id=15505