하나의 연속 막대처럼 보이도록 ToolStripPanel에 포함 된 ToolStrip과 동일한 그리기 스타일을 갖기 위해 노력하고 있습니다. ToolStripProfessionalRenderer를 사용하여 ToolStrip을 사용하여 Windows 작업 표시 줄과 동일한 스타일을 적용 할 수 있습니다.C# ToolStripPanel 그리기 질문
나는 ToolStripProfessionalRenderer에서 파생 된 새로운 렌더러를 작성하여 가까운 입수했습니다 :
class CustomRenderer : ToolStripProfessionalRenderer
{
protected override void OnRenderToolStripPanelBackground(ToolStripPanelRenderEventArgs e)
{
base.OnRenderToolStripPanelBackground(e);
LinearGradientBrush lgb = new LinearGradientBrush(e.ToolStripPanel.ClientRectangle, this.ColorTable.ToolStripGradientBegin, this.ColorTable.ToolStripGradientEnd, LinearGradientMode.Vertical);
e.Graphics.FillPath(lgb, e.ToolStripPanel.ClientRectangle);
}
}
이 올바른 색상으로 그라데이션 모양을 만들지 만 그들은 매우 잘 일치하지 않습니다. 그래디언트의 색상 수가 많아서 펼치기가 길어지는 것 같습니다.
저는이 코드에 표시되지 않은 ToolStrips의 테두리를 설명했지만 여전히 올바르게 일치하지 않습니다.
누구나 이런 일이 발생하는 방법을 알고 계십니까?
제안에 감사드립니다. 나는 그것에 대해 생각하지 않았습니다. 불행히도 그 트릭을하지 않았다 : (나는 생각을 포기해야한다고 생각하기 시작했습니다. – Matt