4.0J 以前のバージョンからの移行で、移行ツール実行後に手動での変更が必要な共通部分については以下のとおりです。
ラッパーコントロールの ControlEffect プロパティでは[Normal]と[XPTheme]を設定できません。
旧バージョンの InputMan で提供されていた ControlEffect プロパティは、5.0J 以降、標準コントロールに合わせて FlatStyle プロパティとして統一されました。ラッパーコントロールの内部では 11.0J のコントロールが動作しています。よって、内部の 11.0J のコントロールに[Normal]と[XPTheme]に該当するスタイルが存在しないため、ラッパーコントロール上の ControlEffect プロパティからそれらを設定することができません。
[Normal]と同様のスタイルを設定する
内部で動作している 11.0J のコントロールのFlatStyleプロパティを[Popup]もしくは[Flat]に設定することで BorderStyle プロパティの設定を反映させることが可能です。下記の設定をコードから行うことで、内部コントロールのスタイルを設定してください。ただし、コンボコントロールなどのサイドボタンについては、描画を厳密に一致させることができません。一番近い描画スタイルであります[Popup]の設定などでご対応ください。
' ≪修正前≫ Edit1.ControlEffect = GrapeCity.Win.Input.ControlEffect.Normal ' ≪修正後≫ Edit1.InnerEditor.FlatStyle = GrapeCity.Win.Editors.FlatStyleEx.Popup Edit1.BorderStyle = BorderStyle.Fixed3D
// ≪修正前≫ edit1.ControlEffect = GrapeCity.Win.Input.ControlEffect.Normal; // ≪修正後≫ edit1.InnerEditor.FlatStyle = GrapeCity.Win.Editors.FlatStyleEx.Popup; edit1.BorderStyle = BorderStyle.Fixed3D;
[XPTheme]と同様のスタイルを設定する
5.0J 以降のスタイル設定では、標準コントロールに合わせて固有のオペレーティングシステムのスタイルは提供していません。そのため、ラッパーコントロールにおいても、全てのオペレーティングシステム上で同じ固有のオペレーティングシステムのスタイルを設定する方法は提供されていません。 ControlEffect プロパティを[ThemeSensitive]として、各オペレーティングシステムのテーマに従う設定に変更するなど、他のスタイルへの変更をご検討ください。
ショートカットキーに関する項目は、プロパティウィンドウに表示されません。ラッパーコントロールのショートカットキーを修正するには、コードから直接変更を行います。なお、この現象はラッパーのクラシックコンボコントロールでは発生しません。
' Edit1に設定されているショートカットキーを全てクリアします。 Edit1.Shortcuts.Clear() ' 特定のショートカットキーだけをクリアするには、Remove()を使用します。 Edit1.Shortcuts.Remove(Keys.F2) ' Edit1のF1にクリアを割り当てます。 Edit1.Shortcuts.Add(Keys.F1, GrapeCity.Win.Input.KeyActions.Interop.Clear)
// edit1に設定されているショートカットキーを全てクリアします。 edit1.Shortcuts.Clear(); // 特定のショートカットキーだけをクリアするには、Remove()を使用します。 edit1.Shortcuts.Remove(Keys.F2); // edit1のF1にクリアを割り当てます。 edit1.Shortcuts.Add(Keys.F1, GrapeCity.Win.Input.KeyActions.Interop.Clear);
なお、ラッパーのコンボコントロールのショートカットキーに、「NextField」または「PreviouisField」が設定されている場合、実行時に例外(System.ArgumentException「ターゲット メソッドにバインドしようとしてエラーが発生しました。」)が発生します。
例外を回避するには該当部分のコードを削除します。ショートカットキーの設定をデザイン画面から行っている場合、該当のコードは xxx.Designer.vb (xxx.Designer.cs) に含まれています。
DropDownCalendar() と DropDownCalculator() の2つのコンストラクタは 2.0J 以降のバージョンでは削除されました。通常、これらを使用する場面はないと考えられますが、万が一、これらのコンストラクタを使用していた場合は、その部分を手作業で移行する必要があります。
1.0J で複数に分かれていた名前空間が 2.0J 以降では GrapeCity.Win.Input の1つにまとめられたため、Imports ステートメント(Visual Basic)または using ディレクティブ(C#)に GrapeCity.Win.Input.Interop が複数存在する場合があります。その場合は手作業で削除します。
Combo、Date、Edit、Mask、Number の各コントロールの Margins プロパティは、TextMarginsに 名前が変更されています。PlusPak の Calculator、FunctionKey、Container.BevelEffect の Margins プロパティそのまま Margins プロパティの名称で提供されるため、移行ツールで TextMargins に名前が変更されない場合があります。Margins プロパティでエラーが発生する場合には、Margins プロパティを TextMargins に手動で名前変更します。
4.0J 以前のバージョンの ImeHandler クラスは削除されました。ImeHandler クラスのコンストラクタや静的メンバ、一部のメソッドは移行ツールによってコメントアウトされますが、ImeHandler クラスを使って実装した機能がコード上に含まれる場合はエラーとなる可能性があります。これらは、IME コンポーネントを利用して新たに設定をし直すか、IME クラスを使ったコードに書き換える必要があります。
この機能は提供されません。この機能を実装するには、PlusPak for Windows Forms のバルーンチップコンポーネント(GcBalloonTip)を利用します。
和暦のカスタマイズをアプリケーション構成ファイルで行っている場合、config ファイルのアセンブリ情報を以下のように手動で書き換えてください。
※11.0.48XX.2017 の部分には、ご利用の InputMan のアセンブリバージョンを設定します。
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="eras" type="GrapeCity.Win.Editors.ErasSectionHandler, GrapeCity.Win.Editors.v110, Version=11.0.48XX.2017, Culture=neutral, PublicKeyToken=0ce01a33ce55ca12"/> </configSections> <eras> <add name = "明治" abbreviation = "明" symbol = "M" startDate = "1868-09-08" shortcuts = "1,M"/> <add name = "大正" abbreviation = "大" symbol = "T" startDate = "1912-07-30" shortcuts = "2,T"/> <add name = "昭和" abbreviation = "昭" symbol = "S" startDate = "1926-12-25" shortcuts = "3,S"/> <add name = "平成" abbreviation = "平" symbol = "H" startDate = "1989-01-08" shortcuts = "4,H"/> <add name = "令和" abbreviation = "令" symbol = "R" startDate = "2019-05-01" shortcuts = "5,R"/> </eras> </configuration>
なお、7.0J 以降で、製品名とバージョンを明記する必要のない以下のような新しい書式もサポートされています。また、この新しい書式は和暦表示に対応している GrapeCity 製品で共通して使用することも可能です。
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="GrapeCityEra" type="System.Configuration.NameValueSectionHandler"/> </configSections> <GrapeCityEra> <add key="1868 09 08" value="明治_明_M_1,M"/> <add key="1912 07 30" value="大正_大_T_2,T"/> <add key="1926 12 25" value="昭和_昭_S_3,S"/> <add key="1989 01 08" value="平成_平_H_4,H"/> <add key="2019 05 01" value="令和_令_R_5,R"/> </GrapeCityEra> </configuration>