Here is my attempt to just get the chart control working in a web part. What am I doing wrong. This compiles in VS.net without issue, but when I add the part to a sharepoint page, I get the "Error
The "TopTenChart" Web Part appears to be causing a problem. "
error page.
<code>
Imports System
Imports System.ComponentModel
Imports System.Data
Imports System.Data.SqlClient
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Xml.Serialization
Imports System.Drawing
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Utilities
Imports Microsoft.SharePoint.WebPartPages
Imports Telerik.WebControls
Imports Microsoft.ApplicationBlocks.Data
<DefaultProperty("Text"), ToolboxData("<{0}:TopTenChart runat=server></{0}:TopTenChart>"), XmlRoot(
Namespace:="SalesDataWPLibrary")> _
Public
Class TopTenChart
Inherits Microsoft.SharePoint.WebPartPages.WebPart
' Private Shared colors As Color() = {Color.AliceBlue, Color.AntiqueWhite, Color.Aqua, Color.Aquamarine, Color.Azure, Color.CornflowerBlue, Color.SteelBlue}
Dim chart1 As Telerik.WebControls.RadChart
Dim s, s1 As ChartSeries
Private Const _defaultText As String = "TopTen"
Dim _text As String = _defaultText
<Browsable(True), Category("Miscellaneous"), DefaultValue(_defaultText), WebPartStorage(Storage.Personal), FriendlyName("Text"), Description("Text Property")> _
Property [Text]() As String
Get
Return _text
End Get
Set(ByVal Value As String)
_text = Value
End Set
End Property
'Render this Web Part to the output parameter specified.
Protected Overrides Sub CreateChildControls()
chart1 =
New RadChart
chart1.ChartSeriesCollection.Clear()
s =
New ChartSeries("GDP", Color.Red, ChartSeriesType.Line)
s.ShowLabels =
True
s.AddItem(1)
s.AddItem(1.5)
s.AddItem(2.0)
s.AddItem(2.5)
s.AddItem(3.5)
chart1.AddChartSeries(s)
s1 =
New ChartSeries("GNP", Color.Blue, ChartSeriesType.Line)
s1.ShowLabels =
True
s1.AddItem(2)
s1.AddItem(3)
s1.AddItem(3.5)
s1.AddItem(4)
s1.AddItem(4.5)
chart1.AddChartSeries(s1)
chart1.Title1.Text = "Growth Indicators"
chart1.Title1.TextColor = Color.BlueViolet
chart1.XAxis.Label.Text = "Years"
chart1.XAxis.AxisColor = Color.Yellow
chart1.XAxis.Label.TextColor = Color.Brown
chart1.XAxis.AxisWidth = 2
chart1.YAxis.Visible =
True
chart1.YAxis.Label.Text = "%"
chart1.YAxis.AxisColor = Color.Yellow
chart1.YAxis.Label.TextColor = Color.Brown
chart1.YAxis.AxisWidth = 2
Controls.Add(chart1)
End Sub
Protected Overrides Sub RenderWebPart(ByVal output As System.Web.UI.HtmlTextWriter)
RenderChildren(output)
output.Write(SPEncode.HtmlEncode([Text]))
'chart1.RenderControl(output)
End Sub
End Class
</code>