LeaveCell イベントで ActivePosition プロパティへの設定が反映されない
対象製品
El Tabelle for .NET
発生環境
v1.2.2003.0630
v1.2.2003.0724
v1.2.2003.0724
状況
修正済み
詳細
ファイル バージョン v1.2.2003.0630 以降のアセンブリにおいて、常時入力モード使用時に LeaveCell イベントで
ActivePosition プロパティを設定すると、ActivePosition プロパティへの設定が反映されず
キャレットが ActivePosition 設定前のセルに残ります。
この問題は v1.2.2003.0630 以前のアセンブリでは発生しません。
ActivePosition プロパティを設定すると、ActivePosition プロパティへの設定が反映されず
キャレットが ActivePosition 設定前のセルに残ります。
この問題は v1.2.2003.0630 以前のアセンブリでは発生しません。
回避方法
この現象はファイル バージョン v1.2.2003.0829 以降のアセンブリで修正されています。
問題が修正されたアセンブリに移行するか、次の操作を行うことで現象を回避できます。
LeaveCell イベント内で ActivePosition プロパティを変更する直前に、一時的に常時入力モードを無効にします。
[Visual Basic]
Sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.Default
[C#]
sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.Default;
その後、EnteredCell イベントで常時入力モードを再び有効にします。
[Visual Basic]
Private Sub Sheet1_EnteredCell(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Sheet1.EnteredCell
Sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.AlwaysEdit
End Sub
[C#]
private void sheet1_EnteredCell(object sender, System.EventArgs e)
{
sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.AlwaysEdit;
}
問題が修正されたアセンブリに移行するか、次の操作を行うことで現象を回避できます。
LeaveCell イベント内で ActivePosition プロパティを変更する直前に、一時的に常時入力モードを無効にします。
[Visual Basic]
Sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.Default
[C#]
sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.Default;
その後、EnteredCell イベントで常時入力モードを再び有効にします。
[Visual Basic]
Private Sub Sheet1_EnteredCell(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Sheet1.EnteredCell
Sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.AlwaysEdit
End Sub
[C#]
private void sheet1_EnteredCell(object sender, System.EventArgs e)
{
sheet1.EditType = GrapeCity.Views.ElTabelle.EditType.AlwaysEdit;
}
キーワード
ELTB03235
この文書は、以前は次のバグレポートIDで公開されていました : 3157