/// <summary> /// <see cref="MB.WinBase.IFace.CreateDataBinding"/> /// </summary> public void CreateDataBinding(IClientRuleConfig clientRule, DataSet dsData) { try { _DataSet = dsData; bool notNullDataSource = judgeIsNullDataSource(clientRule, dsData); if (notNullDataSource) { List <ColumnPropertyInfo> columnPropertyInfos = getColumnPropertyInfo(clientRule); _ColumnPropertyInfos = columnPropertyInfos; string identity = getIdentity(clientRule); _Identity = identity; if (null != _DefaultChartType) { bindDefaultChart(_DefaultChartType, dsData.Tables[0].Columns, _PagerSettings); } else { ChartViewHelper chartViewHelper = new ChartViewHelper(); ChartEventArgs chartEventArgs = new ChartEventArgs(); chartEventArgs.ChartType = SeriesChartType.Pie; _ChartEventArgs = chartEventArgs; List <ChartAreaInfo> chartAreaInfos = chartViewHelper.CreateChartData(dsData, columnPropertyInfos, chartEventArgs, _PagerSettings); _XValueCount = chartViewHelper.XValueCount; _PagerSettings.PageIndex = 0; _PagerSettings.PageCount = _XValueCount / _PagerSettings.PageSize + 1; showBindingNavigator(_PagerSettings); IChart chart = new PieChart(_BaseChart); chart.AreaDataList = chartAreaInfos; } setNavigationStatus(true); setPageButton(); } else { setNavigationStatus(false); } } catch (Exception ex) { MB.WinBase.ApplicationExceptionTerminate.DefaultInstance.ExceptionTerminate(ex); } }
private void prepareChart(ChartEventArgs e, PagerSettings pagerSettings) { ChartViewHelper chartViewHelper = new ChartViewHelper(); List <ChartAreaInfo> chartAreaInfos = chartViewHelper.CreateChartData( _DataSet, _ColumnPropertyInfos, e, pagerSettings); _XValueCount = chartViewHelper.XValueCount; pagerSettings.PageCount = _XValueCount / pagerSettings.PageSize + 1; showBindingNavigator(_PagerSettings); if (e.ChartType == SeriesChartType.Pie) { using (IChart chart = new PieChart(_BaseChart)) { chart.IsPercent = e.IsPercent; chart.AreaDataList = chartAreaInfos; } } bool isMultiChartArea = false; if (e.AnalyseData == ChartViewStatic.R_BTN_COMPARE_NAME) { isMultiChartArea = true; } if (e.ChartType == SeriesChartType.Line) { using (IChart chart = new LineChart(_BaseChart, e.NeedSortXAxis, isMultiChartArea)) { chart.IsPercent = e.IsPercent; chart.AreaDataList = chartAreaInfos; } } if (e.ChartType == SeriesChartType.Column) { using (IChart chart = new ColumnChart(_BaseChart, e.NeedSortXAxis, isMultiChartArea)) { chart.IsPercent = e.IsPercent; chart.AreaDataList = chartAreaInfos; } } _ChartEventArgs = e; }