InputManセルでInputManのイベントを使用したい
対象製品
SPREAD for Windows Forms 8.0J
詳細
SPREADのEditModeOnイベントで編集用のコントロールを取得し、任意のイベントを関連付けることができます。
次のサンプルコードは、GcTextBox.TextChangingイベントと同じ処理をGcTextBoxEditingControl.TextChangingイベントで実装します。(GcTextBoxEditingControlクラスはGcTextBoxクラスの派生クラスです)
文字の自動変換を無効にするには、AutoConvertプロパティをFalseにしてください。
◎サンプルコード(VB)
◎サンプルコード(C#)
次のサンプルコードは、GcTextBox.TextChangingイベントと同じ処理をGcTextBoxEditingControl.TextChangingイベントで実装します。(GcTextBoxEditingControlクラスはGcTextBoxクラスの派生クラスです)
文字の自動変換を無効にするには、AutoConvertプロパティをFalseにしてください。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' GcTextBox型セルの設定
Dim gctc = New GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType()
FpSpread1.ActiveSheet.Columns(0).CellType = gctc
End Sub
Private Sub FpSpread1_EditModeOn(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOn
' GcTextBox型セルの編集用コントロールのTextChangingイベントの設定
If TypeOf FpSpread1.EditingControl Is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl Then
Dim editor As GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl = TryCast(FpSpread1.EditingControl, GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
AddHandler editor.TextChanging, AddressOf editor_TextChanging
End If
End Sub
Private Sub FpSpread1_EditModeOff(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOff
' GcTextBox型セルの編集用コントロールのTextChangingイベントの解除
If TypeOf FpSpread1.EditingControl Is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl Then
Dim editor As GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl = TryCast(FpSpread1.EditingControl, GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
RemoveHandler editor.TextChanging, AddressOf editor_TextChanging
End If
End Sub
Private Sub editor_TextChanging(sender As Object, e As GrapeCity.Win.Spread.InputMan.CellType.TextChangingEventArgs)
Console.WriteLine(e.Result)
End Sub
' GcTextBox型セルの設定
Dim gctc = New GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType()
FpSpread1.ActiveSheet.Columns(0).CellType = gctc
End Sub
Private Sub FpSpread1_EditModeOn(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOn
' GcTextBox型セルの編集用コントロールのTextChangingイベントの設定
If TypeOf FpSpread1.EditingControl Is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl Then
Dim editor As GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl = TryCast(FpSpread1.EditingControl, GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
AddHandler editor.TextChanging, AddressOf editor_TextChanging
End If
End Sub
Private Sub FpSpread1_EditModeOff(sender As Object, e As EventArgs) Handles FpSpread1.EditModeOff
' GcTextBox型セルの編集用コントロールのTextChangingイベントの解除
If TypeOf FpSpread1.EditingControl Is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl Then
Dim editor As GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl = TryCast(FpSpread1.EditingControl, GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
RemoveHandler editor.TextChanging, AddressOf editor_TextChanging
End If
End Sub
Private Sub editor_TextChanging(sender As Object, e As GrapeCity.Win.Spread.InputMan.CellType.TextChangingEventArgs)
Console.WriteLine(e.Result)
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
// GcTextBox型セルの設定
dynamic gctc = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
fpSpread1.ActiveSheet.Columns[0].CellType = gctc;
}
void fpSpread1_EditModeOn(object sender, EventArgs e)
{
// GcTextBox型セルの編集用コントロールのTextChangingイベントの設定
if (fpSpread1.EditingControl is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
{
GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl editor = fpSpread1.EditingControl as GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl;
editor.TextChanging += editor_TextChanging;
}
}
void fpSpread1_EditModeOff(object sender, EventArgs e)
{
// GcTextBox型セルの編集用コントロールのTextChangingイベントの解除
if (fpSpread1.EditingControl is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
{
GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl editor = fpSpread1.EditingControl as GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl;
editor.TextChanging -= editor_TextChanging;
}
}
void editor_TextChanging(object sender, GrapeCity.Win.Spread.InputMan.CellType.TextChangingEventArgs e)
{
Console.WriteLine(e.Result);
}
{
// GcTextBox型セルの設定
dynamic gctc = new GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxCellType();
fpSpread1.ActiveSheet.Columns[0].CellType = gctc;
}
void fpSpread1_EditModeOn(object sender, EventArgs e)
{
// GcTextBox型セルの編集用コントロールのTextChangingイベントの設定
if (fpSpread1.EditingControl is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
{
GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl editor = fpSpread1.EditingControl as GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl;
editor.TextChanging += editor_TextChanging;
}
}
void fpSpread1_EditModeOff(object sender, EventArgs e)
{
// GcTextBox型セルの編集用コントロールのTextChangingイベントの解除
if (fpSpread1.EditingControl is GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl)
{
GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl editor = fpSpread1.EditingControl as GrapeCity.Win.Spread.InputMan.CellType.GcTextBoxEditingControl;
editor.TextChanging -= editor_TextChanging;
}
}
void editor_TextChanging(object sender, GrapeCity.Win.Spread.InputMan.CellType.TextChangingEventArgs e)
{
Console.WriteLine(e.Result);
}
キーワード
セル型