Ответ 1
Свойство RenderMode позволяет разработчику точно управлять отображением ToolStrip (или ContextMenu). Когда вы устанавливаете RenderMode в ManagerRenderMode, вы можете создать собственный рендерер, который позволит вам настроить внешний вид ToolStrip. Например, приведенный ниже код рисует серый градиент в качестве фона элемента в ContextMenu, который в настоящее время имеет над ним курсор.
Class CustomProfessionalRenderer
Inherits ToolStripProfessionalRenderer
Protected Overrides Sub OnRenderMenuItemBackground(ByVal e As ToolStripItemRenderEventArgs)
Dim r As Rectangle = e.Item.ContentRectangle
If e.Item.Selected Then
Dim b = New LinearGradientBrush(r, Color.FromArgb(255, 227, 224, 215), Color.White, LinearGradientMode.Vertical)
Try
e.Graphics.FillRectangle(b, e.Item.ContentRectangle)
Finally
b.Dispose()
End Try
End If
End Sub
End Class
Просто убедитесь, что в событии Form Load или какой-либо другой области, которая вызывается до использования инструментальной панели, вы назначаете свой собственный рендерер на свою панель инструментов:
myToolStrip.Renderer = New CustomProfessionalRenderer()