InputMan for Windows Forms 11.0J 移行ガイド > 4.0J 以前のバージョンからの移行 > 移行後に必要な修正 > テキストコントロール |
4.0J 以前のバージョンからの移行で、移行ツール実行後に手動での変更が必要なテキストコントロールのメンバや機能については以下のとおりです。
AllowSpace プロパティは2.0J 以前のバージョンではBoolean 型となっていたため、2.0J 以前のバージョンから移行した場合には警告が発生します。以下を参考に手作業で修正してください。
2.0J 以前の AllowSpace の値 | 3.0J 以降の AllowSpace の値 |
---|---|
True(スペースを入力可能にする。) | Narrow(半角スペースのみ入力可能。) |
Wide(全角スペースのみ入力可能。) | |
Both(半角、全角スペースとも入力可能。) | |
Wide(全角スペースのみ入力可能。) | |
False(スペースを入力不可能にする。) | None(スペースを入力不可能にする。) |
また、2.0J ではスペースの入力を不可に設定していても、スペースを含んだ文字列をコードから設定した場合にはスペースが入力されていました。この動作は 3.0J 以降で修正され、スペースの入力を不可に設定している場合には、コードからスペースを含んだ文字列を設定するとスペースが削除されます。
DropDown プロパティに設定する DropDown オブジェクトでは、FlatStyle プロパティは提供されません。ボタンの外観はコントロールの外観と常に一致します。警告が発生した状態でも動作しますが、警告を消す場合には FlatStyle プロパティの部分を削除します。
' ≪修正前≫ Me.Edit1.DropDown = New GrapeCity.Win.Input.Interop.DropDown(GrapeCity.Win.Input.Interop.ButtonPosition.Outside, True, GrapeCity.Win.Input.Interop.Visibility.ShowAlways, _ System.Windows.Forms.FlatStyle.System) ' ≪修正後≫ Me.Edit1.DropDown = New GrapeCity.Win.Input.Interop.DropDown(GrapeCity.Win.Input.Interop.ButtonPosition.Outside, True, GrapeCity.Win.Input.Interop.Visibility.ShowAlways)
// ≪修正前≫ this.edit1.DropDown = new GrapeCity.Win.Input.Interop.DropDown(GrapeCity.Win.Input.Interop.ButtonPosition.Outside, true, GrapeCity.Win.Input.Interop.Visibility.ShowAlways, System.Windows.Forms.FlatStyle.System); // ≪修正後≫ this.edit1.DropDown = new GrapeCity.Win.Input.Interop.DropDown(GrapeCity.Win.Input.Interop.ButtonPosition.Outside, true, GrapeCity.Win.Input.Interop.Visibility.ShowAlways);
HighlightText プロパティが True の場合、フォーカスを受け取ったときに表示文字を選択状態にしますが、2.0J のテキストコントロールではファンクションコントロールなどフォーカスが遷移しないコントロールからフォーカスが戻る際にも全選択状態になる場合がありました。この動作は、フォーカス移動が発生しない場合には選択状態とならないように 3.0J で修正されています。2.0J と同じ動作とするためには、テキストコントロール以外のコントロールに一度フォーカスを移動します。
History 関連の機能は用意されていません。以下を参考にオートコンプリート機能を応用して同様の動作を実装してください。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ' 補完文字列として、AutoCompleteCustomSourceプロパティを使用します。 Edit1.InnerEditor.AutoCompleteSource = AutoCompleteSource.CustomSource Edit1.InnerEditor.AutoCompleteMode = AutoCompleteMode.Suggest End Sub Private Sub Edit1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Edit1.KeyDown ' Enterキー押下時に履歴に追加します。 If e.KeyCode = Keys.Enter Then If Edit1.InnerEditor.Text <> "" Then Edit1.InnerEditor.AutoCompleteCustomSource.Add(Edit1.InnerEditor.Text) End If End If End Sub
private void Form1_Load(object sender, EventArgs e) { // 補完文字列として、AutoCompleteCustomSourceプロパティを使用します。 edit1.InnerEditor.AutoCompleteSource = AutoCompleteSource.CustomSource; edit1.InnerEditor.AutoCompleteMode = AutoCompleteMode.Suggest; } private void edit1_KeyDown(object sender, KeyEventArgs e) { //Enterキー押下時に履歴に追加します。 if (e.KeyCode == Keys.Enter) { if(edit1.InnerEditor.Text != "") { edit1.InnerEditor.AutoCompleteCustomSource.Add(edit1.InnerEditor.Text); } } }
ScrollBarStyle プロパティは提供されません。スクロールバーは常にシステムの設定によって決定されます。