Windows フォームの ContextMenuStrip コントロールに、合計で約 200 の国のリストを表示しようとしています。現在、それらはすべて垂直に表示されているため、リストの下部にある国にスクロールするのに長い待ち時間が生じます。ContextMenuStrip.LayoutStyle プロパティをいじってみましたが、どこにも行きませんでした。誰にもこれに関するヒントがありますか?私もグーグルで検索しましたが、答えが見つかりませんでした。助けてくれてありがとう!
2 に答える
0
これは実際にはコード関連の回答ではありませんが、大陸ごとに国をグループ化し、サブメニューに表示することを考えましたか? そうすれば、ユーザーはおそらくより早く目的の国にたどり着けるでしょう。大陸別でなければ、おそらく別のグループ分けがより適切でしょうか?
于 2009-08-20T00:12:34.273 に答える
0
コンテキスト メニューでマウス ローラーまたはページ ダウンを使用する方法がわかりません。contextMenuStrip の代わりに、200 か国を含むドック リストボックスを含むフォームを開き、グローバル変数またはパブリック変数を介して選択を返すことができます。Formborderstyle = none は、タイトル バーを取り除きます。コンテキスト メニューのユーザー インターフェイスをより厳密に模倣したい場合は、doubleclick 以外のイベントを使用できます。
Public Class Form1
Public selectedCountry As String
Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then Form2.ShowDialog()
End Sub
End Class
Public Class Form2
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.DoubleClick
Form1.selectedCountry = ListBox1.SelectedItem
Me.Close()
End Sub
End Class
于 2009-08-20T05:38:55.523 に答える