MS图表控制-饼状图透明度

本文关键字:透明度 控制 MS | 更新日期: 2023-09-27 17:49:37

我想让一个饼状图显示为透明。理想情况下,它应该看起来像本页(链接)左起第三个图表。

到目前为止,我试着设置透明度的图表区域:

<asp:ChartArea Name="ChartArea1" BackColor="64, 165, 191, 228" BackGradientStyle="TopBottom" 
            BackSecondaryColor="Transparent" BorderColor="64, 64, 64, 64"  
            ShadowColor="Transparent">

我也试过从codebehind设置它:

    protected void pieChart_Customize(object sender, EventArgs e)
    {
        foreach (Series s in pieChart.Series)
        {
            s.Color = Color.FromArgb(128, s.Color);
        }
    }

然而,这两种方法都不起作用。有人设法设置这种类型的图表控件的透明度吗?

MS图表控制-饼状图透明度

这似乎可以工作:

protected void Button1_Click(object sender, EventArgs e)
{
    Chart1.Series[0].Points[0].Color = Color.FromArgb(100, Color.Blue);
}

参考:http://msdn.microsoft.com/en-us/library/1hstcth9%28v=vs.110%29.aspx

我在MSDN网站上找到了答案:link

下面是最终为我工作的确切代码:

    protected void Page_Load(object sender, EventArgs e)
    {
        pieChart.Series[0].Palette = ChartColorPalette.SemiTransparent;
    }

获得相同颜色的唯一方法是使用默认调色板并将所有点的alpha值设置为220(这是他们在所有样本中使用的数字):

设置好所有的点后,使用下面的代码来获得想要的效果:

myChart.ApplyPaletteColors();
foreach (var series in myChart.Series)
{
    foreach (var point in series.Points)
    {
        point.Color = Color.FromArgb(220, point.Color);
    }
}

谢谢!因为我也有同样的问题。现在我修复了我的应用程序,它现在正在工作!!我使用:

myChart.ApplyPaletteColors();
foreach (var series in myChart.Series)
{
    foreach (var point in series.Points)
    {
        point.Color = Color.FromArgb(220, point.Color);
    }
}
h2标题引用

谢谢! !:)