void RemoveSeries(DesignerChartDataSerie s) { Chart uChart = this.Content as Chart; for (int i = 0; i < uChart.Series.Count; i++) { if (uChart.Series[i].Uid == s.ID.ToString()) { uChart.Series.Remove(uChart.Series[i]); } } }
void AddSeries(DesignerChartDataSerie newSeries) { newSeries.DataPoints.CollectionChanged += DataPoints_CollectionChanged; DataSeries s = new Visifire.Charts.DataSeries(); s.Uid = newSeries.Name; //线属性 s.SetBinding(DataSeries.AutoFitToPlotAreaProperty, new Binding("AutoFitToPlotArea") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.AxisXTypeProperty, new Binding("AxisXType") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.AxisYTypeProperty, new Binding("AxisYType") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.BorderColorProperty, new Binding("SeriesBorder.BorderBrush") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.BorderStyleProperty, new Binding("BorderStyle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.BorderThicknessProperty, new Binding("SeriesBorder.BorderThickness") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.ColorProperty, new Binding("Color") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.DataPointsProperty, new Binding("DataPoints") { Source = newSeries, Converter = (IValueConverter)(new DesignerDataPointCollectionToVisifireDataPointCollectionConverter()) }); s.SetBinding(DataSeries.HighLightColorProperty, new Binding("HighLightColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.IncludeDataPointsInLegendProperty, new Binding("IncludeDataPointsInLegend") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.IncludePercentageInLegendProperty, new Binding("IncludePercentageInLegend") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.IncludeYValueInLegendProperty, new Binding("IncludeYValueInLegend") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelBackgroundProperty, new Binding("LabelBackground") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelEnabledProperty, new Binding("LabelEnabled") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelFontColorProperty, new Binding("LabelFont.FontColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelFontFamilyProperty, new Binding("LabelFont.FontFamily") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelFontSizeProperty, new Binding("LabelFont.FontSize") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelFontStyleProperty, new Binding("LabelFont.FontStyle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelFontWeightProperty, new Binding("LabelFont.FontWeight") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelLineColorProperty, new Binding("LabelLineColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelLineEnabledProperty, new Binding("LabelLineEnabled") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelLineStyleProperty, new Binding("LabelLineStyle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelLineThicknessProperty, new Binding("LabelLineThickness") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelStyleProperty, new Binding("LabelStyle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelTextProperty, new Binding("LabelText") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LegendMarkerColorProperty, new Binding("LegendMarkerColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LegendMarkerTypeProperty, new Binding("LegendMarkerType") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LegendTextProperty, new Binding("LegendText") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LightingEnabledProperty, new Binding("LightingEnabled") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LineCapProperty, new Binding("LineCap") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LineFillProperty, new Binding("LineFill") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LineStyleProperty, new Binding("LineStyle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LineTensionProperty, new Binding("LineTension") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LineThicknessProperty, new Binding("LineThickness") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerBorderColorProperty, new Binding("MarkerBorderColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerBorderThicknessProperty, new Binding("MarkerBorderThickness") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerColorProperty, new Binding("MarkerColor") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerEnabledProperty, new Binding("MarkerEnabled") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerScaleProperty, new Binding("MarkerScale") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerSizeProperty, new Binding("MarkerSize") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.MarkerTypeProperty, new Binding("MarkerType") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.RadiusXProperty, new Binding("RadiusX") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.RadiusYProperty, new Binding("RadiusY") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.RenderAsProperty, new Binding("RenderAs") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.ShadowEnabledProperty, new Binding("ShadowEnabled") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.ShowInLegendProperty, new Binding("ShowInLegend") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.LabelAngleProperty, new Binding("LabelAngle") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.XValueTypeProperty, new Binding("XValueType") { Source = newSeries, Mode = BindingMode.OneWay }); s.SetBinding(DataSeries.ZIndexProperty, new Binding("ZIndex") { Source = newSeries, Mode = BindingMode.OneWay }); Chart uChart = this.Content as Chart; if (uChart.Series == null) { uChart.Series = new DataSeriesCollection(); } if (!uChart.Series.Contains(s)) { uChart.Series.Add(s); } }