private static string GetGraphExport(ChartFX.WebForms.Chart graph, ChartFX.WebForms.FileFormat format)
        {
            System.IO.Stream strm = new System.IO.MemoryStream(10000);
            //sb.Append("pre-export" + strm.Length);
            graph.Export(format, strm);

            strm.Seek(0, System.IO.SeekOrigin.Begin);
            int max = (int)strm.Length;

            byte[] chrs = new byte[max];
            strm.Read(chrs, 0, max);

            return(Encoding.ASCII.GetString(chrs, 0, (int)strm.Length));
        }
Ejemplo n.º 2
0
        public override void  DataBindGraph(ChartFX.WebForms.Chart graph, DataSet ds)
        {
            DataTable tbl = ds.Tables[0];

            if (GlobalValues.HighSchoolCompletion.Key == HighSchoolCompletionKeys.All)
            {//Stacked Bar Chart
                List <String> myCols = new List <string>();
                myCols.Add(barChart.LabelColumnName);
                myCols.Add(v_HSCWWoDisSchoolDistStateEconELP.Regular_Diplomas);
                myCols.Add(v_HSCWWoDisSchoolDistStateEconELP.HSEDs);
                myCols.Add(v_HSCWWoDisSchoolDistStateEconELP.Certificates);
                tbl = GraphBarChart.RemoveUnusedColumns(tbl, myCols);

                //ds.Tables[0].Columns[v_HSCWWoDisSchoolDistStateEconELP.Regular_Diplomas].ColumnName = "Regular Diploma";
                //ds.Tables[0].Columns[v_HSCWWoDisSchoolDistStateEconELP.HSEDs].ColumnName = "HSED";
                //ds.Tables[0].Columns[v_HSCWWoDisSchoolDistStateEconELP.Certificates]
            }

            base.DataBindGraph(graph, tbl.DataSet);
        }
        /// <summary>
        /// Assigns graph.DataSource and calls graph.DataBind()
        /// </summary>
        /// <param name="graph"></param>
        /// <param name="ds"></param>
        public virtual void DataBindGraph(ChartFX.WebForms.Chart graph, DataSet ds)
        {
            DataTable dt = new DataTable();

            if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                /*//trace To observe the raw Data Source
                 * if ((GlobalValues.TraceLevels & TraceStateUtils.TraceLevels.graph) == TraceStateUtils.TraceLevels.graph)
                 * {
                 *  try
                 *  {
                 *      dt = ((DataView)ds.Tables[0].DefaultView).Table;
                 *  }
                 *  catch
                 *  {
                 *      dt = (DataTable)ds.Tables[0];
                 *  }
                 *  int i;
                 *  int n;
                 *  for (n = 0; n < dt.Columns.Count; n++)
                 *  {
                 *      Response.Write("N:" + dt.Columns[n].ColumnName + "|");
                 *      Response.Write("T:" + dt.Rows[0].ItemArray[n].GetType().Name + "<br/>");
                 *  }
                 *  Response.Write("<br />");
                 *  for (i = 0; i < dt.Rows.Count; i++)
                 *  {
                 *      for (n = 0; n < dt.Columns.Count; n++)
                 *      {
                 *          Response.Write(
                 *              "V:" + dt.Rows[i].ItemArray[n] + "|"
                 *              );
                 *      }
                 *      Response.Write("<br />");
                 *  }
                 * }
                 * // end Trace*/

                graph.DataSource = ds.Tables[0].DefaultView;
                if ((GlobalValues.TraceLevels & TraceStateUtils.TraceLevels.graph) == TraceStateUtils.TraceLevels.graph && graph.DataSource != null)
                {
                    Response.Write("<br />DataBindGraph(): graph.DataSource Assigned");
                    Response.Write("<br /> ds.Tables.[0].DefaultView.Count:" + ds.Tables[0].DefaultView.Count);
                }
                graph.DataBind();
                if ((GlobalValues.TraceLevels & TraceStateUtils.TraceLevels.graph) == TraceStateUtils.TraceLevels.graph && graph.DataSource != null)
                {
                    Response.Write("<br />DataBindGraph(): graph.DataBind() called;");
                    Response.Write("<br />graph.DataSource.GetType().Name:" + graph.DataSource.GetType().Name);
                    Response.Write("<br />");

                    try
                    {
                        dt = ((DataView)graph.DataSource).Table;
                    }
                    catch
                    {
                        dt = (DataTable)graph.DataSource;
                    }
                    int i;
                    int n;
                    for (n = 0; n < dt.Columns.Count; n++)
                    {
                        Response.Write("N:" + dt.Columns[n].ColumnName + "|");
                        if (dt.Rows.Count > 0)
                        {
                            Response.Write("T:" + dt.Rows[0].ItemArray[n].GetType().Name + "<br/>");
                        }
                    }
                    Response.Write("<br />");
                    if (dt.Rows.Count > 0)
                    {
                        for (i = 0; i < dt.Rows.Count; i++)
                        {
                            for (n = 0; n < dt.Columns.Count; n++)
                            {
                                Response.Write(
                                    "V:" + dt.Rows[i].ItemArray[n] + "|"
                                    );
                            }
                            Response.Write("<br />");
                        }
                    }
                }
            }
            else
            {
                if ((GlobalValues.TraceLevels & TraceStateUtils.TraceLevels.graph) == TraceStateUtils.TraceLevels.graph)
                {
                    Response.Write("<br />DataBindGraph: ds.Tables.Count NOT > 0");
                }
            }
        }