操作モードを変更するとIMEモードの設定が有効にならない

文書番号 : 39051     文書種別 : 不具合     登録日 : 2015/07/24     最終更新日 : 2015/11/09
文書を印刷する
対象製品
SPREAD for WPF 1.0J
状況
修正済み
詳細
操作モード(OperationMode)をデフォルト(Normal)から変更した場合、IMEモードの設定が有効になりません。

【手順】
1.新規ウィンドウにSPREADを配置します
2.下記サンプルコードをコピーし、アプリケーションを実行します
3.B1セルをクリックします
   --IMEが無効になりません

【サンプルコード】
  Public Sub New()
    InitializeComponent()

    ' SingleSelectモードに設定
    GcSpreadGrid1.OperationMode = GrapeCity.Windows.SpreadGrid.OperationMode.SingleSelect

    ' テキスト型セルのIMEモードを無効
    Dim textCellType1 As New GrapeCity.Windows.SpreadGrid.TextCellType()
    textCellType1.IsInputMethodEnabled = False
    For i As Integer = 0 To GcSpreadGrid1.ColumnCount - 1
      GcSpreadGrid1.Columns(i).CellType = textCellType1
    Next
  End Sub
回避方法
Service Pack 2(v1.0.2015.1109)で修正済み。
Service Pack 2(v1.0.2015.1109)より前のバージョンでは次の回避方法が有効です。
------------------------------------------

EditElementContainerのIMEを設定します。

【サンプルコード】
  Public Sub New()
    InitializeComponent()

    ' SingleSelectモードに設定
    GcSpreadGrid1.OperationMode = GrapeCity.Windows.SpreadGrid.OperationMode.SingleSelect

    ' テキスト型セルのIMEモードを無効
    Dim textCellType1 As New GrapeCity.Windows.SpreadGrid.TextCellType()
    textCellType1.IsInputMethodEnabled = False
    For i As Integer = 0 To GcSpreadGrid1.ColumnCount - 1
      GcSpreadGrid1.Columns(i).CellType = textCellType1
    Next

    ' 回避策
    Dim style As New Style(GetType(GrapeCity.Windows.SpreadGrid.Presenters.EditElementContainer))
    style.Setters.Add(New Setter(InputMethod.IsInputMethodEnabledProperty, False))
    GcSpreadGrid1.Resources.Add(GetType(GrapeCity.Windows.SpreadGrid.Presenters.EditElementContainer), style)
  End Sub