WINFORM 设置datagridview水平滚动条颜色为紫色
时间: 2023-12-30 09:06:47 浏览: 30
您可以通过以下代码实现:
1. 定义 Win32 API 函数:
```csharp
[DllImport("user32.dll")]
private static extern bool SendMessage(IntPtr hWnd, int msg, int wParam, IntPtr lParam);
```
2. 在 Form.Load 事件中设置水平滚动条颜色:
```csharp
private void Form1_Load(object sender, EventArgs e)
{
// 在这里替换掉 DataGridView 的名称和颜色
var dgv = dataGridView1;
var color = Color.Purple;
dgv.EnableHeadersVisualStyles = false;
dgv.ColumnHeadersDefaultCellStyle.BackColor = color;
dgv.RowHeadersDefaultCellStyle.BackColor = color;
dgv.ColumnHeadersDefaultCellStyle.SelectionBackColor = color;
dgv.RowHeadersDefaultCellStyle.SelectionBackColor = color;
const int SB_HORZ = 0x114;
SendMessage(dgv.Handle, SB_HORZ + 4, (int)color.ToArgb(), IntPtr.Zero);
}
```
注意:此方法只能在 Windows 操作系统中使用。另外,此方法改变的是整个系统中 DataGridView 的水平滚动条颜色,而不仅仅是您的应用程序。