private void UpdateScale() { // add custom labels to the X axis NHierarchicalScaleConfigurator scale = new NHierarchicalScaleConfigurator(); NHierarchicalScaleNodeCollection nodes = scale.Nodes;; scale.FirstRowGridStyle = (FirstRowGridStyle)FirstRowSeparatorModeComboBox.SelectedIndex; scale.GroupRowGridStyle = (GroupRowGridStyle)GroupRowSeparatorModeComboBox.SelectedIndex; scale.InnerMajorTickStyle.Visible = false; scale.OuterMajorTickStyle.Visible = false; string[] months = new string[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; for (int i = 0; i < 2; i++) { NHierarchicalScaleNode yearNode = new NHierarchicalScaleNode(0, (i + 2007).ToString()); yearNode.LabelStyle.TickMode = (RangeLabelTickMode)GroupRowIndividualModeComboBox.SelectedIndex; nodes.AddChild(yearNode); for (int j = 0; j < 4; j++) { NHierarchicalScaleNode quarterNode = new NHierarchicalScaleNode(3, "Q" + (j + 1).ToString()); quarterNode.LabelStyle.TickMode = (RangeLabelTickMode)GroupRowIndividualModeComboBox.SelectedIndex; yearNode.ChildNodes.AddChild(quarterNode); for (int k = 0; k < 3; k++) { NHierarchicalScaleNode monthNode = new NHierarchicalScaleNode(1, months[j * 3 + k]); monthNode.LabelStyle.Angle = new NScaleLabelAngle(90); monthNode.LabelStyle.TickMode = (RangeLabelTickMode)FirstRowIndividualModeComboBox.SelectedIndex; quarterNode.ChildNodes.AddChild(monthNode); } } } // update control state FirstRowIndividualModeComboBox.Enabled = ((FirstRowGridStyle)FirstRowSeparatorModeComboBox.SelectedIndex) == FirstRowGridStyle.Individual; GroupRowIndividualModeComboBox.Enabled = ((GroupRowGridStyle)GroupRowSeparatorModeComboBox.SelectedIndex) == GroupRowGridStyle.Individual; NScaleStripStyle stripStyle = new NScaleStripStyle(); stripStyle.Length = 3; stripStyle.Interval = 3; stripStyle.FillStyle = new NColorFillStyle(Color.FromArgb(125, Color.LightGray)); stripStyle.SetShowAtWall(ChartWallType.Back, true); scale.StripStyles.Add(stripStyle); scale.CreateSeparatorForEachLevel = CreateSeparatorForEachLevelCheckBox.Checked; nChartControl1.Charts[0].Axis(StandardAxis.PrimaryX).ScaleConfigurator = scale; nChartControl1.Refresh(); }
void OnUpdateScale(NValueChangeEventArgs arg) { // add custom labels to the X axis NHierarchicalScale scale = new NHierarchicalScale(); NHierarchicalScaleNodeCollection nodes = scale.ChildNodes; scale.FirstRowGridStyle = (ENFirstRowGridStyle)m_FirstRowGridStyleComboBox.SelectedIndex; scale.GroupRowGridStyle = (ENGroupRowGridStyle)m_GroupRowGridStyleComboBox.SelectedIndex; scale.InnerMajorTicks.Visible = false; scale.OuterMajorTicks.Visible = false; string[] months = new string[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; for (int i = 0; i < 2; i++) { NHierarchicalScaleNode yearNode = new NHierarchicalScaleNode(0, (i + 2007).ToString()); yearNode.LabelStyle.TickMode = (ENRangeLabelTickMode)m_GroupRowTickModeComboBox.SelectedIndex; nodes.AddChild(yearNode); for (int j = 0; j < 4; j++) { NHierarchicalScaleNode quarterNode = new NHierarchicalScaleNode(3, "Q" + (j + 1).ToString()); quarterNode.LabelStyle.TickMode = (ENRangeLabelTickMode)m_GroupRowTickModeComboBox.SelectedIndex; yearNode.Nodes.Add(quarterNode); for (int k = 0; k < 3; k++) { NHierarchicalScaleNode monthNode = new NHierarchicalScaleNode(1, months[j * 3 + k]); monthNode.LabelStyle.Angle = new NScaleLabelAngle(90); monthNode.LabelStyle.TickMode = (ENRangeLabelTickMode)m_FirstRowTickModeComboBox.SelectedIndex; quarterNode.Nodes.Add(monthNode); } } } // update control state m_FirstRowTickModeComboBox.Enabled = ((ENFirstRowGridStyle)m_FirstRowGridStyleComboBox.SelectedIndex) == ENFirstRowGridStyle.Individual; m_GroupRowTickModeComboBox.Enabled = ((ENGroupRowGridStyle)m_GroupRowGridStyleComboBox.SelectedIndex) == ENGroupRowGridStyle.Individual; NScaleStrip stripStyle = new NScaleStrip(); stripStyle.Length = 3; stripStyle.Interval = 3; stripStyle.Fill = new NColorFill(NColor.FromColor(NColor.LightGray, 0.5f)); scale.Strips.Add(stripStyle); scale.CreateSeparatorForEachLevel = m_CreateSeparatorForEachLevelCheckBox.Checked; m_Chart.Axes[ENCartesianAxis.PrimaryX].Scale = scale; }
private void UpdateScale() { // add custom labels to the X axis NHierarchicalScaleConfigurator hirarchicalScale = new NHierarchicalScaleConfigurator(); NHierarchicalScaleNodeCollection nodes = hirarchicalScale.Nodes;; string[] months = new string[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; RangeLabelTickMode labelTickMode = RangeLabelTickMode.Separators; for (int i = 0; i < 2; i++) { if (!Show2007DataCheckBox.Checked && i == 0) { continue; } NHierarchicalScaleNode yearNode = new NHierarchicalScaleNode(0, (i + 2007).ToString()); yearNode.LabelStyle.TickMode = labelTickMode; nodes.AddChild(yearNode); for (int j = 0; j < 4; j++) { NHierarchicalScaleNode quarterNode = new NHierarchicalScaleNode(3, "Q" + (j + 1).ToString()); quarterNode.LabelStyle.TickMode = labelTickMode; yearNode.ChildNodes.AddChild(quarterNode); for (int k = 0; k < 3; k++) { NHierarchicalScaleNode monthNode = new NHierarchicalScaleNode(1, months[j * 3 + k]); monthNode.LabelStyle.Angle = new NScaleLabelAngle(90); monthNode.LabelStyle.TickMode = labelTickMode; monthNode.LabelStyle.Offset = new NLength(1); quarterNode.ChildNodes.AddChild(monthNode); } } } hirarchicalScale.CreateSeparatorForEachLevel = ShowLevelSeparatorsCheckBox.Checked; nChartControl1.Charts[0].Axis(StandardAxis.PrimaryX).ScaleConfigurator = hirarchicalScale; }