Gallery
Box Header Ribbon Styles
<%@ Page Language="C#" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dnc" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>
<%@ Import Namespace="dotnetCHARTING.Mapping" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Demonstrates several box header styling ideas.
Chart.Size = "530x420";
Chart.TempDirectory = "temp";
Chart.Debug = true;
Chart.NoDataLabel.Text = "";
// Instantiate a set of annotations with different settings.
// The getMyNewAnnotation(...) method applies the parameter specified and a few general settings and and returns the new annotation.
Annotation an1 = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
an1.Header.Offset = new Point(0, 5);
Annotation an101 = getMyNewAnnotation("Banner", BoxCapStyle.RibbonUp, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
an101.Header.Offset = new Point(0, 8);
Annotation an102 = getMyNewAnnotation("Banner", BoxCapStyle.RibbonUp, BoxCapStyle.RibbonUp, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
an102.Header.Offset = new Point(0, 5);
an102.Header.Orientation = dotnetCHARTING.Orientation.Bottom;
Annotation an103 = getMyNewAnnotation("Banner", BoxCapStyle.Triangle, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Edge, StringAlignment.Near);
an103.Header.Orientation = dotnetCHARTING.Orientation.Left;
an103.CornerBottomLeft = BoxCorner.Cut;
Annotation an2 = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.Torn, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Near);
an2.Header.Offset = new Point(0, 5);
an2.Size = new Size(90, 60);
an2.Header.Orientation = dotnetCHARTING.Orientation.Right;
Annotation an3 = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
an3.Header.Offset = new Point(0, 5);
an3.Header.Orientation = dotnetCHARTING.Orientation.Right;
Annotation an4 = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.Box, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far);
an4.Header.Offset = new Point(-5, 0);
Annotation an5 = getMyNewAnnotation("Tab", BoxCapStyle.RibbonUp, BoxCapStyle.Box, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far);
an5.Header.Offset = new Point(-5, 0);
an5.Header.Orientation = dotnetCHARTING.Orientation.Bottom;
Annotation an7 = getMyNewAnnotation("Floating", BoxCapStyle.TriangleInverted, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
an7.Header.Offset = new Point(0, 5);
Annotation an8 = getMyNewAnnotation("Label", BoxCapStyle.CutUp, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Far);
Annotation an9 = getMyNewAnnotation("Floating", BoxCapStyle.RibbonDown, BoxCapStyle.Torn, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Center);
an9.Header.Offset = new Point(0, 5);
Annotation an901 = getMyNewAnnotation("Floating", BoxCapStyle.RibbonDown, BoxCapStyle.Arrow, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Center);
an901.Header.Offset = new Point(0, 5);
Annotation an902 = getMyNewAnnotation("Floating", BoxCapStyle.RibbonUp, BoxCapStyle.Triangle, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Near);
an902.Header.Orientation = dotnetCHARTING.Orientation.Bottom;
an902.Header.Offset = new Point(0, 0);
Annotation an903 = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.Box, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Near);
an903.Header.Offset = new Point(0, 5);
Annotation an904 = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Center);
Annotation an905 = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Center);
an905.Header.Orientation = dotnetCHARTING.Orientation.Right;
an905.Size = new Size(90, 60);
Annotation an10 = getMyNewAnnotation("Label", BoxCapStyle.CutUp, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center);
Annotation an11 = getMyNewAnnotation("Label", BoxCapStyle.Triangle, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Near);
an11.CornerTopLeft = BoxCorner.Cut;
Annotation an12 = getMyNewAnnotation("Label", BoxCapStyle.CutDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far);
an12.Header.Offset = new Point(10, 0);
Annotation an1602 = getMyNewAnnotation("Pointer", BoxCapStyle.RibbonDown, BoxCapStyle.Arrow, EdgeAlignment.Edge, EdgeAlignment.Outside, EdgeAlignment.Edge, StringAlignment.Center);
// Add Annotations to the chart
Chart.Annotations.Add(an1, an101, an102, an103, an2, an3, an7, an8, an9, an901, an902, an903, an904, an905, an4, an5, an10, an11, an12, an1602);
organizeAnnotationsGrid(Chart.Annotations, 4, 5, 130, 80);
}
/// <summary>
/// Gets an annotation with the specified settings and applies some defaults.
/// </summary>
/// <param name="content">Header text</param>
/// <param name="startStyle">Start style</param>
/// <param name="endStyle">End Style</param>
/// <param name="leftA">Left Alignment</param>
/// <param name="rightA">Right Alignment</param>
/// <param name="verticalA">Vertical Alignment</param>
/// <param name="labelA">Label Alignment</param>
/// <returns>An annotation with the specified settings</returns>
Annotation getMyNewAnnotation(string content, BoxCapStyle startStyle, BoxCapStyle endStyle, EdgeAlignment leftA, EdgeAlignment rightA, EdgeAlignment verticalA, StringAlignment labelA)
{
Annotation an = new Annotation("");
// Apply parameters
an.Header.Label.Alignment = labelA;
an.Header.StartCap = startStyle;
an.Header.EndCap = endStyle;
an.Header.StartAlignment = leftA;
an.Header.EndAlignment = rightA;
an.Header.VerticalAlignment = verticalA;
// Apply default settings.
an.DefaultCorner = BoxCorner.Square;
an.Size = new Size(90, 50);
an.Shadow.Color = Color.Transparent;
an.Shadow.Soft = false;
an.Header.Shadow.Depth = 5;
an.Header.Label.Text = content;
an.Header.Label.Font = new Font("Verdana", 8.5f);
an.Background.Transparency = 10;
an.Background.ShadingEffectMode = ShadingEffectMode.Background1;
an.Header.Background.ShadingEffectMode = ShadingEffectMode.Seven;
an.Header.Background.Transparency = 60;
an.Header.Background.ShadingEffectMode = ShadingEffectMode.Seven;
an.Header.Background.Transparency = 00;
an.Background.Color = Color.LightYellow;
return an;
}
void organizeAnnotationsGrid(AnnotationCollection ac, int columns, int rows, int xSpace, int ySpace)
{
int i = 0;
int xStart = 20;
int yStart = 20;
for (int ic = 0; ic < columns; ic++)
{
for (int ir = 0; ir < rows; ir++)
{
ac[i++].Position = new Point(ic * xSpace + xStart, ir * ySpace + yStart);
}
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>.netCHARTING Sample</title>
</head>
<body>
<div align="center">
<dnc:Chart ID="Chart" runat="server" />
</div>
</body>
</html>
<%@ Page Language="vb" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dnc" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>
<%@ Import Namespace="dotnetCHARTING.Mapping" %>
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Demonstrates several box header styling ideas.
Chart.Size = "530x420"
Chart.TempDirectory = "temp"
Chart.Debug = True
Chart.NoDataLabel.Text = ""
' Instantiate a set of annotations with different settings.
' The getMyNewAnnotation(...) method applies the parameter specified and a few general settings and and returns the new annotation.
Dim an1 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
an1.Header.Offset = New Point(0, 5)
Dim an101 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.RibbonUp, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
an101.Header.Offset = New Point(0, 8)
Dim an102 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.RibbonUp, BoxCapStyle.RibbonUp, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
an102.Header.Offset = New Point(0, 5)
an102.Header.Orientation = dotnetCHARTING.Orientation.Bottom
Dim an103 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.Triangle, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Edge, StringAlignment.Near)
an103.Header.Orientation = dotnetCHARTING.Orientation.Left
an103.CornerBottomLeft = BoxCorner.Cut
Dim an2 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.Torn, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Near)
an2.Header.Offset = New Point(0, 5)
an2.Size = New Size(90, 60)
an2.Header.Orientation = dotnetCHARTING.Orientation.Right
Dim an3 As Annotation = getMyNewAnnotation("Banner", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Edge, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
an3.Header.Offset = New Point(0, 5)
an3.Header.Orientation = dotnetCHARTING.Orientation.Right
Dim an4 As Annotation = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.Box, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far)
an4.Header.Offset = New Point(-5, 0)
Dim an5 As Annotation = getMyNewAnnotation("Tab", BoxCapStyle.RibbonUp, BoxCapStyle.Box, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far)
an5.Header.Offset = New Point(-5, 0)
an5.Header.Orientation = dotnetCHARTING.Orientation.Bottom
Dim an7 As Annotation = getMyNewAnnotation("Floating", BoxCapStyle.TriangleInverted, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
an7.Header.Offset = New Point(0, 5)
Dim an8 As Annotation = getMyNewAnnotation("Label", BoxCapStyle.CutUp, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Far)
Dim an9 As Annotation = getMyNewAnnotation("Floating", BoxCapStyle.RibbonDown, BoxCapStyle.Torn, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Center)
an9.Header.Offset = New Point(0, 5)
Dim an901 As Annotation = getMyNewAnnotation("Floating", BoxCapStyle.RibbonDown, BoxCapStyle.Arrow, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Center)
an901.Header.Offset = New Point(0, 5)
Dim an902 As Annotation = getMyNewAnnotation("Floating", BoxCapStyle.RibbonUp, BoxCapStyle.Triangle, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Near)
an902.Header.Orientation = dotnetCHARTING.Orientation.Bottom
an902.Header.Offset = New Point(0, 0)
Dim an903 As Annotation = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.Box, EdgeAlignment.Edge, EdgeAlignment.Inside, EdgeAlignment.Inside, StringAlignment.Near)
an903.Header.Offset = New Point(0, 5)
Dim an904 As Annotation = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Center)
Dim an905 As Annotation = getMyNewAnnotation("Tab", BoxCapStyle.RibbonDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Center)
an905.Header.Orientation = dotnetCHARTING.Orientation.Right
an905.Size = New Size(90, 60)
Dim an10 As Annotation = getMyNewAnnotation("Label", BoxCapStyle.CutUp, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Edge, EdgeAlignment.Inside, StringAlignment.Center)
Dim an11 As Annotation = getMyNewAnnotation("Label", BoxCapStyle.Triangle, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Near)
an11.CornerTopLeft = BoxCorner.Cut
Dim an12 As Annotation = getMyNewAnnotation("Label", BoxCapStyle.CutDown, BoxCapStyle.RibbonDown, EdgeAlignment.Inside, EdgeAlignment.Inside, EdgeAlignment.Edge, StringAlignment.Far)
an12.Header.Offset = New Point(10, 0)
Dim an1602 As Annotation = getMyNewAnnotation("Pointer", BoxCapStyle.RibbonDown, BoxCapStyle.Arrow, EdgeAlignment.Edge, EdgeAlignment.Outside, EdgeAlignment.Edge, StringAlignment.Center)
' Add Annotations to the chart
Chart.Annotations.Add(an1, an101, an102, an103, an2, an3, an7, an8, an9, an901, an902, an903, an904, an905, an4, an5, an10, an11, an12, an1602)
organizeAnnotationsGrid(Chart.Annotations, 4, 5, 130, 80)
End Sub
''' <summary>
''' Gets an annotation with the specified settings and applies some defaults.
''' </summary>
''' <param name="content">Header text</param>
''' <param name="startStyle">Start style</param>
''' <param name="endStyle">End Style</param>
''' <param name="leftA">Left Alignment</param>
''' <param name="rightA">Right Alignment</param>
''' <param name="verticalA">Vertical Alignment</param>
''' <param name="labelA">Label Alignment</param>
''' <returns>An annotation with the specified settings</returns>
Function getMyNewAnnotation(ByVal content As String, ByVal startStyle As BoxCapStyle, ByVal endStyle As BoxCapStyle, ByVal leftA As EdgeAlignment, ByVal rightA As EdgeAlignment, ByVal verticalA As EdgeAlignment, ByVal labelA As StringAlignment) As Annotation
Dim an As Annotation = New Annotation("")
' Apply parameters
an.Header.Label.Alignment = labelA
an.Header.StartCap = startStyle
an.Header.EndCap = endStyle
an.Header.StartAlignment = leftA
an.Header.EndAlignment = rightA
an.Header.VerticalAlignment = verticalA
' Apply default settings.
an.DefaultCorner = BoxCorner.Square
an.Size = New Size(90, 50)
an.Shadow.Color = Color.Transparent
an.Shadow.Soft = False
an.Header.Shadow.Depth = 5
an.Header.Label.Text = content
an.Header.Label.Font = New Font("Verdana", 8.5f)
an.Background.Transparency = 10
an.Background.ShadingEffectMode = ShadingEffectMode.Background1
an.Header.Background.ShadingEffectMode = ShadingEffectMode.Seven
an.Header.Background.Transparency = 60
an.Header.Background.ShadingEffectMode = ShadingEffectMode.Seven
an.Header.Background.Transparency = 00
an.Background.Color = Color.LightYellow
Return an
End Function
Sub organizeAnnotationsGrid(ByVal ac As AnnotationCollection, ByVal columns As Integer, ByVal rows As Integer, ByVal xSpace As Integer, ByVal ySpace As Integer)
Dim i As Integer = 0
Dim xStart As Integer = 20
Dim yStart As Integer = 20
For ic As Integer = 0 To columns - 1
For ir As Integer = 0 To rows - 1
ac(i).Position = New Point(ic * xSpace + xStart, ir * ySpace + yStart)
i += 1
Next ir
Next ic
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>.netCHARTING Sample</title>
</head>
<body>
<div align="center">
<dnc:Chart ID="Chart" runat="server" />
</div>
</body>
</html>
- Sample FilenameBoxHeaderRibbonStyles.aspx
- Version6.2
- Uses DatabaseNo