0

リストボックス (listbox1) を含むユーザーコントロールがあります。

水平スクロールバーの設定は TRUE に設定されています。

listbox1 の値を設定する別のリストボックス (selectionchanged) にもハンドラーがあります (これが問題を引き起こす可能性がある場合)。

このユーザーコントロールをタブコントロールのタブページに追加します。

私が直面している問題は、listbox1 に表示されるアイテムが幅よりも大きくても、水平スクロールバーが表示されないことです。

これを修正する方法を知っている人はいますか?

ありがとう

-編集-私が示すことができる限り多くのコードを要求した

dim tabpage as new Tabpage
dim dict as new dictionary(of String, list(of MyObject))
'fill dict
tabpage.add(usercontrol(dict))
tabcontrol1.tabpages.add(tabpage)

ユーザーコントロール:

class UserControl  
 public sub new(dict)
  Dim bs As BindingSource = New BindingSource(dict, Nothing)
    ListBox1.DataSource = bs
    ListBox1.DisplayMember = "Key"
 end sub  

 Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
    ListBox2.DataSource = New BindingSource(CType(ListBox1.SelectedItem, KeyValuePair(Of String, List(Of MyObject))).Value, Nothing)
        End Sub
End Class
4

1 に答える 1

0

うまくいかなかった理由がわかりました。私が見落としていた小さな設定でした。他の人に役立つかもしれないので、ここに投稿しています。

リストボックスのmultiColumnがTrueに設定されている場合、水平スクロールバーは希望どおりに表示されません。

multiColumn をオフにする (不要な場合) か、列幅を修正すると、この問題が解決します。

トピックを閉じることができます。

于 2013-04-24T14:00:15.683 に答える