[Shift]+[Delete]キーでコントロールの内容を切り取ることができない
対象製品
InputMan for .NET 3.0J
発生環境
動作環境と同じ
状況
修正済み
詳細
Mask、Number、Comboの各コントロールで、[Shift]+[Delete]キーでコントロールの内容を切り取りクリップボードにコピーすることができません。
Numberの場合は、値は削除されますが、クリップボードにデータがコピーされません。
Numberの場合は、値は削除されますが、クリップボードにデータがコピーされません。
回避方法
不具合を修正した2006/7/27版をご使用ください。
最新修正版は、このサイトのアップデートページからダウンロードできます。
または、下記のサンプルコードのように、KeyDownイベントなどを使って、クリップボードへ選択されたデータのコピーと削除を同時に行うことでも回避できます。
サンプルコード
[VB]
Private Sub Control_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Mask1.KeyDown, Combo1.KeyDown, Number1.KeyDown
Dim ctr As GrapeCity.Win.Input.EditBase = CType(sender, GrapeCity.Win.Input.EditBase)
ctr.Copy()
If e.KeyCode = Keys.Delete And e.Shift Then
Dim i As Integer = ctr.SelectionStart + 1
ctr.Text = ctr.Text.Remove(i, ctr.SelectedText.Length - 1)
ctr.SelectionStart = i
End If
End Sub
[C#]
private void control_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
GrapeCity.Win.Input.EditBase ctr = (GrapeCity.Win.Input.EditBase)sender;
ctr.Copy();
if (e.KeyCode == Keys.Delete && e.Shift)
{
int i = ctr.SelectionStart + 1;
ctr.Text = ctr.Text.Remove(i, ctr.SelectedText.Length - 1);
ctr.SelectionStart = i;
}
}
最新修正版は、このサイトのアップデートページからダウンロードできます。
または、下記のサンプルコードのように、KeyDownイベントなどを使って、クリップボードへ選択されたデータのコピーと削除を同時に行うことでも回避できます。
サンプルコード
[VB]
Private Sub Control_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Mask1.KeyDown, Combo1.KeyDown, Number1.KeyDown
Dim ctr As GrapeCity.Win.Input.EditBase = CType(sender, GrapeCity.Win.Input.EditBase)
ctr.Copy()
If e.KeyCode = Keys.Delete And e.Shift Then
Dim i As Integer = ctr.SelectionStart + 1
ctr.Text = ctr.Text.Remove(i, ctr.SelectedText.Length - 1)
ctr.SelectionStart = i
End If
End Sub
[C#]
private void control_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
GrapeCity.Win.Input.EditBase ctr = (GrapeCity.Win.Input.EditBase)sender;
ctr.Copy();
if (e.KeyCode == Keys.Delete && e.Shift)
{
int i = ctr.SelectionStart + 1;
ctr.Text = ctr.Text.Remove(i, ctr.SelectedText.Length - 1);
ctr.SelectionStart = i;
}
}
キーワード
INMN05395
この文書は、以前は次のバグレポートIDで公開されていました : 5871