LitDev.LDChart.Properties C# (CSharp) Method

Properties() public static method

Set chart properties.
public static Properties ( Primitive chartName, Primitive style, Primitive scale ) : void
chartName Primitive The chart name.
style Primitive A style for the chart, options are: /// "Pie" (default) /// "Doughnut" /// "Bubble" /// "Bar" /// "Column"
scale Primitive A scale factor for the chart, default 1.
return void
        public static void Properties(Primitive chartName, Primitive style, Primitive scale)
        {
            Type GraphicsWindowType = typeof(GraphicsWindow);
            Dictionary<string, UIElement> _objectsMap;
            UIElement obj;

            try
            {
                _objectsMap = (Dictionary<string, UIElement>)GraphicsWindowType.GetField("_objectsMap", BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.IgnoreCase).GetValue(null);
                if (_objectsMap.TryGetValue((string)chartName, out obj))
                {
                    InvokeHelper ret = new InvokeHelper(delegate
                    {
                        try
                        {
                            if (obj.GetType() == typeof(Chart))
                            {
                                Chart chart = (Chart)obj;
                                switch (((string)style).ToLower())
                                {
                                    case "pie":
                                        chart.eStyle = Chart.Styles.PIE;
                                        break;
                                    case "doughnut":
                                        chart.eStyle = Chart.Styles.DOUGHNUT;
                                        break;
                                    case "bubble":
                                        chart.eStyle = Chart.Styles.BUBBLE;
                                        break;
                                    case "bar":
                                        chart.eStyle = Chart.Styles.BAR;
                                        break;
                                    case "column":
                                        chart.eStyle = Chart.Styles.COLUMN;
                                        break;
                                }
                                chart.scale = scale;
                                chart.Update();
                            }
                        }
                        catch (Exception ex)
                        {
                            Utilities.OnError(Utilities.GetCurrentMethod(), ex);
                        }
                    });
                    FastThread.Invoke(ret);
                }
                else
                {
                    Utilities.OnShapeError(Utilities.GetCurrentMethod(), chartName);
                }
            }
            catch (Exception ex)
            {
                Utilities.OnError(Utilities.GetCurrentMethod(), ex);
            }
        }