StatusStip控件中的自定义控件



是否有办法将自定义控件添加到StatusStrip控件?

说,我需要一个多列的组合框在状态栏…

正如谦虚的Hans Passant所提到的,解决方案是使用ToolStripControlHostToolStripDesignerAvailability属性。

更多细节可点击此处查看

最简单的方法是使用ToolStripComboBox自己绘制,然后将该控件放置在StatusStrip中。ToolStripComboBox与普通的ComboBox不同,因为它派生自ToolStripControlHost。

Dim comboStatus As New ToolStripComboBox
With DirectCast(comboStatus.Control, ComboBox)
  .DrawMode = DrawMode.OwnerDrawFixed
  AddHandler .DrawItem, AddressOf comboStatus_DrawItem
End With
StatusStrip1.Items.Add(comboStatus)

然后使用drawwitem事件:

Private Sub comboStatus_DrawItem(ByVal sender As Object, ByVal e As DrawItemEventArgs)
  Dim comboStatus As ComboBox = sender
  e.DrawBackground()
  If e.Index > -1 Then
    //Do you drawing.
  End If
End Sub

看到组合框。绘制细节的事件

相关内容

  • 没有找到相关文章

最新更新