📄 defaultcs.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Telerik.QuickStart;
using Telerik.WebControls;
namespace Telerik.ChartExamplesCS.Series
{
/// <summary>
/// Summary description for _Default.
/// </summary>
public class DefaultCS: XhtmlPage
{
protected System.Web.UI.WebControls.Button Button2;
protected System.Web.UI.WebControls.Button Button3;
protected System.Web.UI.WebControls.DropDownList ddlSeries;
protected System.Web.UI.WebControls.DropDownList ddlSeriesType;
protected System.Web.UI.WebControls.DropDownList ddlAxisLayout;
protected System.Web.UI.WebControls.TextBox tbSeriesName;
protected System.Web.UI.WebControls.Button Button1;
protected Telerik.WebControls.RadChart RadChart1;
static Color[] MainColors = { Color.FromArgb(199, 243, 178),
Color.FromArgb(253, 226, 0),
Color.FromArgb(0, 111, 223),
Color.FromArgb(255, 153, 32),
Color.FromArgb(197, 00, 65)
};
protected System.Web.UI.WebControls.DropDownList ddlAlignment;
protected System.Web.UI.WebControls.TextBox txtBoxLabelDistance;
protected System.Web.UI.WebControls.TextBox txtBoxLabelRotationAngle;
protected System.Web.UI.WebControls.DropDownList ddlDefaultLabel;
protected System.Web.UI.WebControls.Label lblIncorrectSettings;
static Color[] SecondColors = { Color.FromArgb(17, 147, 7),
Color.FromArgb(255, 156, 0),
Color.FromArgb(154, 233, 255),
Color.FromArgb(255, 200, 182),
Color.FromArgb(255, 150, 215)
};
private void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
InitControls();
SetControlValues();
}
}
private void InitControls()
{
InitControl(ddlAxisLayout, typeof(ChartAxisLayoutStyle));
InitControl(ddlSeriesType, typeof(ChartSeriesType));
InitControl(ddlAlignment, typeof(ContentAlignment));
}
private void SetControlValues()
{
InitdllSeries();
SetValuesFromSeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex));
}
private void InitControl(DropDownList ddl, Type type)
{
string[] valueNames = Enum.GetNames(type);
ddl.Items.Clear();
foreach (string s in valueNames)
{
ddl.Items.Add(s);
}
}
private void InitdllSeries()
{
ddlSeries.Items.Clear();
foreach (ChartSeries series in RadChart1.ChartSeriesCollection)
{
ddlSeries.Items.Add(series.Name);
}
}
private void SetValuesFromSeries(ChartSeries series)
{
if (series != null)
{
SetControlValue(ddlSeriesType, series.Type.ToString());
tbSeriesName.Text = series.Name;
txtBoxLabelDistance.Text = series.LabelAppearance.Distance.ToString();
SetControlValue(ddlAlignment, series.LabelAppearance.Alignment.ToString());
txtBoxLabelRotationAngle.Text = series.LabelAppearance.RotationAngle.ToString();
foreach (ChartSeries s in RadChart1.ChartSeriesCollection)
{
s.Appearance.BorderColor = Color.DimGray;
}
series.Appearance.BorderColor = Color.Red;
}
}
private void SetControlValue(DropDownList ddList, string val)
{
ddList.SelectedItem.Selected = false;
ddList.Items.FindByValue(val).Selected = true;
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.ddlSeries.SelectedIndexChanged += new System.EventHandler(this.ddlSeries_SelectedIndexChanged);
this.ddlAxisLayout.SelectedIndexChanged += new System.EventHandler(this.ddlAxisLayout_SelectedIndexChanged);
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Button2.Click += new System.EventHandler(this.Button2_Click);
this.Button3.Click += new System.EventHandler(this.Button3_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void ddlSeries_SelectedIndexChanged(object sender, System.EventArgs e)
{
SetValuesFromSeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex));
}
private void Button3_Click(object sender, System.EventArgs e)
{
try
{
ModifySeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex));
SetControlValues();
lblIncorrectSettings.Visible = false;
}
catch
{
lblIncorrectSettings.Visible = true;
}
}
private void ModifySeries(ChartSeries series)
{
series.Type = (ChartSeriesType) Enum.Parse(typeof(ChartSeriesType), ddlSeriesType.SelectedItem.Value);
series.Name = tbSeriesName.Text;
foreach (ChartSeriesItem item in series.Items)
{
item.Label = ddlDefaultLabel.SelectedItem.Value;
}
series.DefaultLabel = ddlDefaultLabel.SelectedItem.Value;
series.LabelAppearance.Alignment = (ContentAlignment) Enum.Parse(typeof(ContentAlignment), ddlAlignment.SelectedItem.Value);
series.LabelAppearance.Distance = int.Parse(txtBoxLabelDistance.Text);
series.LabelAppearance.RotationAngle = double.Parse(txtBoxLabelRotationAngle.Text);
}
private void ddlAxisLayout_SelectedIndexChanged(object sender, System.EventArgs e)
{
RadChart1.XAxis.LayoutStyle = (ChartAxisLayoutStyle) Enum.Parse(typeof(ChartAxisLayoutStyle), ddlAxisLayout.SelectedItem.Value);
}
private void Button1_Click(object sender, System.EventArgs e)
{
if (RadChart1.ChartSeriesCollection.Count > 0)
{
RadChart1.RemoveSeriesAt(ddlSeries.SelectedIndex);
SetControlValues();
}
}
private void Button2_Click(object sender, System.EventArgs e)
{
ChartSeriesType seriesType = (ChartSeriesType) Enum.Parse(typeof(ChartSeriesType), ddlSeriesType.SelectedItem.Value);
ChartSeries series = RadChart1.CreateSeries(tbSeriesName.Text, Color.Blue, seriesType);
ModifySeries(series);
Random r = new Random();
series.AddItem(r.Next(-100, 100), "A");
series.AddItem(r.Next(-100, 100), "B");
series.AddItem(r.Next(-100, 100), "C");
series.AddItem(r.Next(-100, 100), "D");
series.Name = "Series " + (ddlSeries.Items.Count + 1).ToString();
series.LabelAppearance.TextFont = new Font("Arial", 9, FontStyle.Bold);
series.LabelAppearance.TextColor = Color.DimGray;
series.Appearance.MainColor = MainColors[ (RadChart1.ChartSeriesCollection.Count - 1) % MainColors.Length];
series.Appearance.SecondColor = SecondColors[ (RadChart1.ChartSeriesCollection.Count - 1) % SecondColors.Length];
series.Appearance.FillStyle = FillStyle.Gradient;
if (series.Type == ChartSeriesType.Pie)
{
foreach (ChartSeriesItem seriesItem in series.Items)
{
seriesItem.YValue = Math.Abs(seriesItem.YValue);
}
}
SetControlValues();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -