⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultvb.aspx.vb

📁 Telerik是很大的第三方软件制造商
💻 VB
字号:

Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Web
Imports System.Web.SessionState
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports Telerik.QuickStart
Imports Telerik.WebControls


Namespace Telerik.ChartExamplesVB.Configurator.Elements.Series
    '/ <summary>
    '/ Summary description for _Default.
    '/ </summary>

    Public Class DefaultVB
        Inherits XhtmlPage
        Protected WithEvents Button2 As System.Web.UI.WebControls.Button
        Protected WithEvents Button3 As System.Web.UI.WebControls.Button
        Protected WithEvents ddlSeries As System.Web.UI.WebControls.DropDownList
        Protected ddlSeriesType As System.Web.UI.WebControls.DropDownList
        Protected WithEvents ddlAxisLayout As System.Web.UI.WebControls.DropDownList
        Protected tbSeriesName As System.Web.UI.WebControls.TextBox
        Protected WithEvents Button1 As System.Web.UI.WebControls.Button
        Protected RadChart1 As Telerik.WebControls.RadChart

        Private Shared MainColors As Color() = {Color.FromArgb(199, 243, 178), Color.FromArgb(253, 226, 0), Color.FromArgb(0, 111, 223), Color.FromArgb(255, 153, 32), Color.FromArgb(197, 0, 65)}
        Protected ddlAlignment As System.Web.UI.WebControls.DropDownList
        Protected txtBoxLabelDistance As System.Web.UI.WebControls.TextBox
        Protected txtBoxLabelRotationAngle As System.Web.UI.WebControls.TextBox
        Protected ddlDefaultLabel As System.Web.UI.WebControls.DropDownList
        Protected lblIncorrectSettings As System.Web.UI.WebControls.Label

        Private Shared SecondColors As Color() = {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 Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
            If Not Page.IsPostBack Then
                InitControls()
                SetControlValues()
            End If
        End Sub 'Page_Load



        Private Sub InitControls()
            InitControl(ddlAxisLayout, GetType(ChartAxisLayoutStyle))
            InitControl(ddlSeriesType, GetType(ChartSeriesType))
            InitControl(ddlAlignment, GetType(ContentAlignment))
        End Sub 'InitControls


        Private Sub SetControlValues()
            InitdllSeries()
            SetValuesFromSeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex))
        End Sub 'SetControlValues


        Private Sub InitControl(ByVal ddl As DropDownList, ByVal type As Type)
            Dim valueNames As String() = [Enum].GetNames(type)

            ddl.Items.Clear()

            Dim s As String
            For Each s In valueNames
                ddl.Items.Add(s)
            Next s
        End Sub 'InitControl


        Private Sub InitdllSeries()
            ddlSeries.Items.Clear()

            Dim series As ChartSeries
            For Each series In RadChart1.ChartSeriesCollection
                ddlSeries.Items.Add(series.Name)
            Next series
        End Sub 'InitdllSeries



        Private Sub SetValuesFromSeries(ByVal series As ChartSeries)
            If Not (series Is Nothing) Then
                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()

                Dim s As ChartSeries
                For Each s In RadChart1.ChartSeriesCollection
                    s.Appearance.BorderColor = Color.DimGray
                Next s
                series.Appearance.BorderColor = Color.Red
            End If
        End Sub 'SetValuesFromSeries


        Private Sub SetControlValue(ByVal ddList As DropDownList, ByVal val As String)
            ddList.SelectedItem.Selected = False
            ddList.Items.FindByValue(val).Selected = True
        End Sub 'SetControlValue

#Region "Web Form Designer generated code"

        Protected Overrides Sub OnInit(ByVal e As EventArgs)
            '
            ' CODEGEN: This call is required by the ASP.NET Web Form Designer.
            '
            InitializeComponent()
            MyBase.OnInit(e)
        End Sub 'OnInit


        '/		Required method for Designer support - do not modify
        '/		the contents of this method with the code editor.
        '/ </summary>
        Private Sub InitializeComponent()
        End Sub 'InitializeComponent

#End Region


        Private Sub ddlSeries_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlSeries.SelectedIndexChanged
            SetValuesFromSeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex))
        End Sub 'ddlSeries_SelectedIndexChanged


        Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
            Try
                ModifySeries(RadChart1.GetChartSeries(ddlSeries.SelectedIndex))
                SetControlValues()
                lblIncorrectSettings.Visible = False
            Catch
                lblIncorrectSettings.Visible = True
            End Try
        End Sub 'Button3_Click


        Private Sub ModifySeries(ByVal series As ChartSeries)
            series.Type = CType([Enum].Parse(GetType(ChartSeriesType), ddlSeriesType.SelectedItem.Value), ChartSeriesType)
            series.Name = tbSeriesName.Text
            Dim item As ChartSeriesItem
            For Each item In series.Items
                item.Label = ddlDefaultLabel.SelectedItem.Value
            Next item
            series.DefaultLabel = ddlDefaultLabel.SelectedItem.Value
            series.LabelAppearance.Alignment = CType([Enum].Parse(GetType(ContentAlignment), ddlAlignment.SelectedItem.Value), ContentAlignment)
            series.LabelAppearance.Distance = Integer.Parse(txtBoxLabelDistance.Text)
            series.LabelAppearance.RotationAngle = Double.Parse(txtBoxLabelRotationAngle.Text)
        End Sub 'ModifySeries


        Private Sub ddlAxisLayout_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlAxisLayout.SelectedIndexChanged
            RadChart1.XAxis.LayoutStyle = CType([Enum].Parse(GetType(ChartAxisLayoutStyle), ddlAxisLayout.SelectedItem.Value), ChartAxisLayoutStyle)
        End Sub 'ddlAxisLayout_SelectedIndexChanged


        Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
            If RadChart1.ChartSeriesCollection.Count > 0 Then
                RadChart1.RemoveSeriesAt(ddlSeries.SelectedIndex)
                SetControlValues()
            End If
        End Sub 'Button1_Click


        Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim seriesType As ChartSeriesType = CType([Enum].Parse(GetType(ChartSeriesType), ddlSeriesType.SelectedItem.Value), ChartSeriesType)
            Dim series As ChartSeries = RadChart1.CreateSeries(tbSeriesName.Text, Color.Blue, seriesType)
            ModifySeries(series)

            Dim r As 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) Mod MainColors.Length))
            series.Appearance.SecondColor = SecondColors(((RadChart1.ChartSeriesCollection.Count - 1) Mod SecondColors.Length))
            series.Appearance.FillStyle = FillStyle.Gradient

            If series.Type = ChartSeriesType.Pie Then
                Dim seriesItem As ChartSeriesItem
                For Each seriesItem In series.Items
                    seriesItem.YValue = Math.Abs(seriesItem.YValue)
                Next seriesItem
            End If

            SetControlValues()
        End Sub 'Button2_Click
    End Class 'DefaultCS 
End Namespace 'Telerik.ChartExamplesCS.Series

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -