作成日: 2017/03/14 最終更新日: 2017/05/17
文書種別
不具合
状況
修正済み
詳細
マージセルにおいて、マージ範囲内の最上部のセル部分(縦方向でのマージの場合)、またはマージ範囲内の左端のセル部分(横方向でのマージの場合)をダブルクリックしないと、マージセルの編集を行うことができません。
回避方法
この問題はバージョン4.0.20171.260で修正されました。
※ .NET Framework 2.0用アセンブリはメンテナンスモードに移行したため、C1.Win.C1xxxx.2.dllでの修正は行われません。
.NET Framework 4.0用アセンブリ(C1.Win.C1xxxx.4.dll)をご利用ください。
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は、次の通りです。
縦方向のマージの場合、MouseClickイベントなどを利用して、ダブルクリックしたセルのRowプロパティを最上部のセルの値に設定した後、StartEditingメソッドを実行します。
以下のコードは、1行目2行目をマージしたグリッドで2行目をダブルクリックした場合のサンプルです。
◎サンプルコード(VB)
◎サンプルコード(C#)
横方向のマージの場合も同様にMouseClickイベントなどを利用して、ダブルクリックしたセルのColプロパティを左端のセルの値に設定した後、StartEditingメソッドを実行します。
以下のコードは、1列目2列目をマージしたグリッドで2列目をダブルクリックした場合のサンプルです。
◎サンプルコード(VB)
◎サンプルコード(C#)
※ .NET Framework 2.0用アセンブリはメンテナンスモードに移行したため、C1.Win.C1xxxx.2.dllでの修正は行われません。
.NET Framework 4.0用アセンブリ(C1.Win.C1xxxx.4.dll)をご利用ください。
修正版の適用方法については、アップデートの方法を参照してください。
修正版を適用しない場合の回避方法は、次の通りです。
縦方向のマージの場合、MouseClickイベントなどを利用して、ダブルクリックしたセルのRowプロパティを最上部のセルの値に設定した後、StartEditingメソッドを実行します。
以下のコードは、1行目2行目をマージしたグリッドで2行目をダブルクリックした場合のサンプルです。
◎サンプルコード(VB)
Private Sub C1FlexGrid1_MouseClick(sender As Object, e As MouseEventArgs)
If C1FlexGrid1.Row = 2 Then
C1FlexGrid1.Row = 1
C1FlexGrid1.StartEditing()
End If
End Sub
If C1FlexGrid1.Row = 2 Then
C1FlexGrid1.Row = 1
C1FlexGrid1.StartEditing()
End If
End Sub
◎サンプルコード(C#)
private void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
{
if (c1FlexGrid1.Row == 2)
{
c1FlexGrid1.Row = 1;
c1FlexGrid1.StartEditing();
}
}
{
if (c1FlexGrid1.Row == 2)
{
c1FlexGrid1.Row = 1;
c1FlexGrid1.StartEditing();
}
}
横方向のマージの場合も同様にMouseClickイベントなどを利用して、ダブルクリックしたセルのColプロパティを左端のセルの値に設定した後、StartEditingメソッドを実行します。
以下のコードは、1列目2列目をマージしたグリッドで2列目をダブルクリックした場合のサンプルです。
◎サンプルコード(VB)
Private Sub C1FlexGrid1_MouseClick(sender As Object, e As MouseEventArgs)
If C1FlexGrid1.Col = 2 Then
C1FlexGrid1.Col = 1
C1FlexGrid1.StartEditing()
End If
End Sub
If C1FlexGrid1.Col = 2 Then
C1FlexGrid1.Col = 1
C1FlexGrid1.StartEditing()
End If
End Sub
◎サンプルコード(C#)
private void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
{
if (c1FlexGrid1.Col == 2)
{
c1FlexGrid1.Col = 1;
c1FlexGrid1.StartEditing();
}
}
{
if (c1FlexGrid1.Col == 2)
{
c1FlexGrid1.Col = 1;
c1FlexGrid1.StartEditing();
}
}
旧文書番号
82059