/// <summary>
/// Create all your controls here for rendering.
/// Try to avoid using the RenderWebPart() method.
/// </summary>
protected override void CreateChildControls()
{
if (!_error)
{
try
{
base.CreateChildControls();
// Your code here...
// We first check all settings
CheckSettings();
// We transform the list into XML Input
ListToXmlConverter conv = new ListToXmlConverter(_listName, _viewName);
string chartXmlContent = conv.GenerateXml(ChartTitle, XValue, XTitle, YValue, YTitle, Action, Colors);
// We generate the graph
string chartHtml = Utils.RenderChartHTML(ChartType, chartXmlContent, ChartID.ToString(), ChartWidth.ToString(), ChartHeight.ToString(), false);
LiteralControl lc = new LiteralControl(chartHtml);
this.Controls.Add(lc);
// We add a cariage return to display correctly export buttons
if (this._excelExport || this._xmlExport)
{
this.Controls.Add(new LiteralControl("<br />"));
}
// display (or not, depending of the user choice option) the button "export to excel"
if (this._excelExport)
{
Button btnExcel = new Button();
btnExcel.Text = "Export chart to Excel";
btnExcel.Click += new System.EventHandler(this.ExportExcelButtonClick);
btnExcel.Style.Add("font-size", "10");
btnExcel.Style.Add("margin", "10");
this.Controls.Add(btnExcel);
}
// display (or not, depending of the user choice option) the button "export to xml"
if (this._xmlExport)
{
Button btnXML = new Button();
btnXML.Text = "Export chart to XML file";
btnXML.Click += new System.EventHandler(this.ExportXmlButtonClick);
btnXML.Style.Add("font-size", "10");
btnXML.Style.Add("margin", "10");
this.Controls.Add(btnXML);
}
}
catch (Exception ex)
{
HandleException(ex);
}
}
}