1

ToolStripCombobox設定すると、それDropDownStyleがありSimpleます。初めてメニューを開くと、画面の左上隅に表示されます。ただし、同じアイテムを 2 回目に選択すると、正しい場所に表示されます。

コードが画面の左上隅にリストを表示しないようにする方法はありますか?

よろしくお願いします。

初めて

結果1

2回目

結果2

4

3 に答える 3

2

問題を解決するには、このコードLoadをフォームのイベントに入れます:

var item = toolStripComboBox1;
var createControl = item.Control.Parent.GetType().GetMethod("CreateControl",
    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
createControl.Invoke(item.Control.Parent, new object[] { true });

これは奇妙なバグであり、 with がこのバグに悩まされる理由がToolStripComboBoxわかりDisplayStyleませSimpleんが、に設定DisplayStyleするDropDownか、このバグをDropDownList持たないことによります。

上記のコードを使用して、所有者ToolStripDropDownMenuを表示する前に強制的に作成しました。

于 2016-11-02T23:06:28.897 に答える