在 Winforms 图表中突出显示一个 LegendItem
Highlight one LegendItem in Winforms Chart
如标题所示,我只想突出显示 Winforms 图表的一个 LegendItem。 (我不想改变系列的颜色!我只想改变LegendItem Text的Color或LegendItem的BackgroundColor)
我尝试了以下方法,但似乎没有任何改变..
LegendItem legendItem = (LegendItem)result.Object;
legendItem.BorderColor = Color.BlueViolet;
legendItem.MarkerColor = Color.BlueViolet;
legendItem.ShadowColor = Color.BlueViolet;
legendItem.Color = Color.BlueViolet;
legendItem.BackSecondaryColor = Color.BlueViolet;
legendItem.BackImageTransparentColor = Color.BlueViolet;
legendItem.MarkerBorderColor = Color.BlueViolet;
legendItem.SeparatorColor = Color.BlueViolet;
我的问题有解决方案吗?
您必须处理 CustomizeLegend
事件:
private void chart1_CustomizeLegend(object sender, CustomizeLegendEventArgs e)
{
foreach (LegendItem li in e.LegendItems)
{
if (li.Cells[1].Text == "Series2")
{
li.Cells[1].BackColor = Color.DarkGreen;
li.Cells[1].ForeColor = Color.White;
}
}
}
如标题所示,我只想突出显示 Winforms 图表的一个 LegendItem。 (我不想改变系列的颜色!我只想改变LegendItem Text的Color或LegendItem的BackgroundColor)
我尝试了以下方法,但似乎没有任何改变..
LegendItem legendItem = (LegendItem)result.Object;
legendItem.BorderColor = Color.BlueViolet;
legendItem.MarkerColor = Color.BlueViolet;
legendItem.ShadowColor = Color.BlueViolet;
legendItem.Color = Color.BlueViolet;
legendItem.BackSecondaryColor = Color.BlueViolet;
legendItem.BackImageTransparentColor = Color.BlueViolet;
legendItem.MarkerBorderColor = Color.BlueViolet;
legendItem.SeparatorColor = Color.BlueViolet;
我的问题有解决方案吗?
您必须处理 CustomizeLegend
事件:
private void chart1_CustomizeLegend(object sender, CustomizeLegendEventArgs e)
{
foreach (LegendItem li in e.LegendItems)
{
if (li.Cells[1].Text == "Series2")
{
li.Cells[1].BackColor = Color.DarkGreen;
li.Cells[1].ForeColor = Color.White;
}
}
}