2016-08-15 4 views
0

Ich möchte eine einzelne Spalte in einem WinForm-StackedColumn-Diagramm hervorheben. Als Beispiel sehe ich, wie man um die einzelnen DataPoints in jeder in der Spalte angezeigten Reihe Grenzen setzt und eine ArrowAnnotation auf einen der DataPoints zeigt, aber ich sehe keine Möglichkeit, die Spalte als Ganzes hervorzuheben. Zum Beispiel wäre es großartig, wenn die Spalte sich auf die doppelte Breite der anderen Spalten ausdehnt und/oder eine andere Hintergrundfarbe hat (einschließlich der leeren Bereiche über und unter den DataPoints). Ist es möglich zu tun, was ich will, und wenn ja, wie? C# -Beispiele sind vorzuziehen, aber nicht notwendig. Danke. SteveSo markieren Sie eine Spalte in einem WinForm-StackedColumn-Diagramm

Antwort

1

Sie könnten jede andere Spalte mit BackHatchStyle = ChartHatchStyle.Percent50 und BackSecondaryColor = Color.Black dimmen. Dadurch wird Ihre ausgewählte Spalte heller/hervorgehoben angezeigt.

Hier ist ein Beispiel:

int highlightColumnIndex = 0; // Set the highlighted column here! 
foreach (Series cs in chart1.Series) { 
    foreach (DataPoint dp in cs.Points) { 
     dp.BackSecondaryColor = Color.Black; 
     dp.BackHatchStyle = ChartHatchStyle.Percent50; 
    } 
    cs.Points[highlightColumnIndex].BackHatchStyle = ChartHatchStyle.None; 
} 

ändern chart1 auf den Namen Ihres Diagramms und highlightColumnIndex ändern den Index der Spalte, die Sie hervorheben möchten übereinstimmen.

Hoffe das hilft :)

+0

Wow. Großer Vorschlag. Ich habe die ganze Prozent Option verpasst. Dies wird mir wirklich helfen, mein Ziel zu erreichen. Vielen Dank. –

+0

Froh zu helfen :) – Delosdos

Verwandte Themen