You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Chart控件右上角数据标签的背景色及其他属性?

修改Chart控件图例的背景色及其他属性

图表示例

你说的右侧标签是Chart控件的图例(Legend),可以通过以下几种方式修改它的背景色、字体、边框等属性:

一、修改整个图例区域的样式

默认情况下,Chart会自动生成一个图例,直接操作chart1.Legends[0]即可调整整体样式:

// 获取默认图例
var legend = chart1.Legends[0];
// 设置背景色
legend.BackColor = Color.LightGray;
// 设置边框
legend.BorderColor = Color.DarkGray;
legend.BorderWidth = 1;
// 设置字体
legend.Font = new Font("Segoe UI", 8.25f, FontStyle.Regular);
// 设置图例位置(可选)
legend.Docking = Docking.Right;

二、修改单个图例项(对应每个Series的标签)的样式

如果要单独调整某一组数据对应的图例标签样式,可直接操作对应的Series对象:

chart1.Series.Clear();
// 添加Series并保存引用
var targetSeries = chart1.Series.Add($"{donusumMiktari} {neyden} / {neye}");

// 设置该Series对应的图例项背景色(结合渐变效果)
targetSeries.BackSecondaryColor = Color.LightCyan;
targetSeries.BackGradientStyle = GradientStyle.Vertical;
// 设置图例项的文本颜色
targetSeries.LegendText = $"{donusumMiktari} {neyden} / {neye}";
targetSeries.Color = Color.DarkBlue; // 设置图例项的标记颜色

// 添加数据点
double bidPriceVal = Convert.ToDouble(bidPrice) * donusumMiktari;
targetSeries.Points.AddXY("Teklif Fiyat", bidPriceVal);
double askPriceVal = Convert.ToDouble(askPrice) * donusumMiktari;
targetSeries.Points.AddXY("Alış Fiyatı", askPriceVal);

三、精细自定义图例项(通过事件)

如果需要更灵活的控制,比如给不同图例项设置不同背景色,可以使用CustomizeLegend事件:

  1. 先给Chart绑定事件:
chart1.CustomizeLegend += chart1_CustomizeLegend;
  1. 实现事件处理方法:
private void chart1_CustomizeLegend(object sender, CustomizeLegendEventArgs e)
{
    foreach (var item in e.LegendItems)
    {
        // 给每个图例项设置背景色
        item.BackColor = Color.LightGreen;
        // 设置文本颜色
        item.ForeColor = Color.DarkRed;
    }
}

内容的提问来源于stack exchange,提问作者Berke Yildiz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 13:20:36