Cara: Gambar Kustom Kontrol ToolStrip
Kontrol ToolStrip memiliki kelas rendering (lukisan) terkait berikut:
ToolStripSystemRenderer menyediakan tampilan dan gaya sistem operasi Anda.
ToolStripProfessionalRenderer menyediakan tampilan dan gaya Microsoft Office.
ToolStripRenderer adalah kelas dasar abstrak untuk dua kelas penyajian lainnya.
Untuk menggambar kustom (juga dikenal sebagai gambar pemilik) ToolStrip, Anda dapat mengambil alih salah satu kelas perender dan mengubah aspek logika penyajian.
Prosedur berikut menjelaskan berbagai aspek gambar kustom.
Beralih antara perender yang disediakan
Atur RenderMode properti ke nilai yang ToolStripRenderMode Anda inginkan.
Dengan ManagerRenderMode, statis RenderMode menentukan perender untuk aplikasi Anda. Nilai ToolStripRenderMode lainnya adalah Custom, , Professionaldan System.
Mengubah batas gaya Office
- Ambil alih ToolStripProfessionalRenderer.OnRenderToolStripBorder, tetapi jangan panggil kelas dasar.
Catatan
Ada versi metode ini untuk ToolStripRenderer, , ToolStripSystemRendererdan ToolStripProfessionalRenderer.
Mengubah ProfessionalColorTable
Ambil alih ProfessionalColorTable dan ubah warna yang Anda inginkan.
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { var colorTable = new MyColorTable(); toolStrip1.Renderer = new ToolStripProfessionalRenderer(colorTable); } class MyColorTable: ProfessionalColorTable { public override System.Drawing.Color ButtonPressedGradientBegin => Color.Red; public override System.Drawing.Color ButtonPressedGradientMiddle => Color.Blue; public override System.Drawing.Color ButtonPressedGradientEnd => Color.Green; public override System.Drawing.Color ButtonSelectedGradientBegin => Color.Yellow; public override System.Drawing.Color ButtonSelectedGradientMiddle => Color.Orange; public override System.Drawing.Color ButtonSelectedGradientEnd => Color.Violet; } }
Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim colorTable As New MyColorTable ToolStrip1.Renderer = New ToolStripProfessionalRenderer(colorTable) End Sub Class MyColorTable Inherits ProfessionalColorTable Public Overrides ReadOnly Property ButtonPressedGradientBegin() As System.Drawing.Color Get Return Color.Red End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientMiddle() As System.Drawing.Color Get Return Color.Blue End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientEnd() As System.Drawing.Color Get Return Color.Green End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientBegin() As System.Drawing.Color Get Return Color.Yellow End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientMiddle() As System.Drawing.Color Get Return Color.Orange End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientEnd() As System.Drawing.Color Get Return Color.Violet End Get End Property End Class End Class
Mengubah penyajian untuk semua ToolStrips
ToolStripManager.RenderMode Gunakan properti untuk memilih salah satu perender yang disediakan.
Gunakan ToolStripManager.Renderer untuk menetapkan perender kustom.
Pastikan diatur ToolStrip.RenderMode ke nilai ManagerRenderModedefault .
Menonaktifkan warna Office
- Atur ToolStripManager.VisualStylesEnabled ke
false
.
Menonaktifkan warna Office untuk satu ToolStrip
Gunakan kode yang mirip dengan contoh kode berikut.
ProfessionalColorTable colorTable = new ProfessionalColorTable(); colorTable.UseSystemColors = true; toolStrip1.Renderer = new ToolStripProfessionalRenderer(colorTable);
Dim colorTable As New ProfessionalColorTable colorTable.UseSystemColors = True ToolStrip1.Renderer = new ToolStripProfessionalRenderer(colorTable)
Baca juga
.NET Desktop feedback
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk