作成日: 2016/03/07 最終更新日: 2016/05/18
文書種別
不具合
状況
修正済み
詳細
MarqueeStyleをFloatingEditorに設定し、AllowAddNewをTrueにして新規行の追加を許可すると、以下のようにセル値がクリアされる現象が発生します。
現象例(1)
1. 任意の既存セル(例:2行1列)をクリックします。
2. 新規行のセル(例:1列目のセル)をクリックしします。
3. 他のセル(例:新規行の2列目や任意の既存セル)または他のコントロールへフォーカスを移動します。
【結果】新規行へ移動する直前の行の1列目のセル(上記例では、2行1列)がクリアされます。
現象例(2)
1. (1)と同じく、任意の既存セル(例:2行1列)をクリックします。
2. 新規行の2列目のセルをクリックしします。
3. 他のセル(例:新規行の1列目や任意の既存セル)または他のコントロールへフォーカスを移動します。
【結果】新規行へ移動する直前の行の2列目のセル(上記例では、2行1列)がクリアされます。
現象例(1)
1. 任意の既存セル(例:2行1列)をクリックします。
2. 新規行のセル(例:1列目のセル)をクリックしします。
3. 他のセル(例:新規行の2列目や任意の既存セル)または他のコントロールへフォーカスを移動します。
【結果】新規行へ移動する直前の行の1列目のセル(上記例では、2行1列)がクリアされます。
現象例(2)
1. (1)と同じく、任意の既存セル(例:2行1列)をクリックします。
2. 新規行の2列目のセルをクリックしします。
3. 他のセル(例:新規行の1列目や任意の既存セル)または他のコントロールへフォーカスを移動します。
【結果】新規行へ移動する直前の行の2列目のセル(上記例では、2行1列)がクリアされます。
回避方法
この問題はバージョン2.0.20161.147または4.0.20161.147で修正されました。
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は次の通りです。
BeforeRowColChangeイベント内で、MarqueeStyleプロパティの設定を切り替えます。
◎サンプルコード(VB)
◎サンプルコード(C#)
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は次の通りです。
BeforeRowColChangeイベント内で、MarqueeStyleプロパティの設定を切り替えます。
◎サンプルコード(VB)
Private Sub C1TrueDBGrid1_BeforeRowColChange(sender As Object, e As C1.Win.C1TrueDBGrid.CancelEventArgs) Handles C1TrueDBGrid1.BeforeRowColChange
Dim grid As C1TrueDBGrid = sender
If grid.DestinationRow = grid.RowCount Then
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.DottedCellBorder
Else
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.FloatingEditor
End If
End Sub
Dim grid As C1TrueDBGrid = sender
If grid.DestinationRow = grid.RowCount Then
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.DottedCellBorder
Else
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.FloatingEditor
End If
End Sub
◎サンプルコード(C#)
private void C1TrueDBGrid1_BeforeRowColChange(object sender, C1.Win.C1TrueDBGrid.CancelEventArgs e)
{
C1TrueDBGrid grid = sender;
if (grid.DestinationRow == grid.RowCount) {
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.DottedCellBorder;
}
else {
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.FloatingEditor;
}
}
{
C1TrueDBGrid grid = sender;
if (grid.DestinationRow == grid.RowCount) {
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.DottedCellBorder;
}
else {
C1TrueDBGrid1.MarqueeStyle = MarqueeEnum.FloatingEditor;
}
}
旧文書番号
81587