Nevron Open Vision Documentation
Chart / Legend / Legend Appearance
In This Topic
    Legend Appearance
    In This Topic

    The NLegend object derives from the NWidget base class and as such has all properties that common for widgets - background fill, margins, padding, border etc. The legend builds on top of that to provide support for gridlines and interlace styles.

     Setting the Legend Background Fill

    You set the legend background fill through the BackgroundFill property - the following code snippet modifes the legend background fill to semitransparent white:

    C#
    Copy Code

    legend.BackgroundFill = new NColorFill(NColor.FromColor(NColor.White, 0.5f));

     

    Legend Grid Lines

    The legend grid lines visually separates the data items horizontally and vertically. You control the appearance of horizontal and vertical grid lines trough the HorizontalGridStroke and VerticalGridStroke properties. The following code shows how to change the horizontal grid lines to thick solid black:

    C#
    Copy Code

    legend.HorizontalGridStroke = new NStroke(2, NColor.Black);

     Legend Interlace Styles

    The legend interlace stripes are automatically generated based on the interlace styles added to the InterlaceStyles collection of the legend. Each interlace style is represented by a NLegendInterlaceStyle object controlling the interlace stripes appearance and orientation (row / column). Furthermore the interlace stripes have Z order - stripes generated by interlace styles on top of the collection appear below interlace stripes generated by the styles afterwards. The following code creates a row and column interlace style:

    C#
    Copy Code

    NLegendInterlaceStylesCollection interlaceStyles = new NLegendInterlaceStylesCollection();

    NLegendInterlaceStyle horzInterlaceStyle = new NLegendInterlaceStyle();
    horzInterlaceStyle.Fill =
    new NColorFill(NColor.FromColor(NColor.LightBlue, 0.5f));
    horzInterlaceStyle.Type =
    ENLegendInterlaceStyleType.Row;
    horzInterlaceStyle.Length = 1;
    horzInterlaceStyle.Interval = 1;
    interlaceStyles.Add(horzInterlaceStyle);

    NLegendInterlaceStyle vertInterlaceStyle = new NLegendInterlaceStyle();
    vertInterlaceStyle.Fill =
    new NColorFill(NColor.FromColor(NColor.DarkGray, 0.5f));
    vertInterlaceStyle.Type =
    ENLegendInterlaceStyleType.Col;
    vertInterlaceStyle.Length = 1;
    vertInterlaceStyle.Interval = 1;
    interlaceStyles.Add(vertInterlaceStyle);

    legend.InterlaceStyles = interlaceStyles;

     

    See Also