public void Initialize()
        {
            SfCircularGauge dcgCpuUsage = new SfCircularGauge();

            TextBlock tbCpuUsageHeader = new TextBlock()
            {
                Text       = "CPU (%)",
                FontSize   = 15,
                Foreground = new SolidColorBrush(Colors.Black)
            };

            dcgCpuUsage.GaugeHeader         = tbCpuUsageHeader;
            dcgCpuUsage.HeaderAlignment     = HeaderAlignment.Custom;
            dcgCpuUsage.GaugeHeaderPosition = new Point(0.35, 0.70);


            dcgCpuUsage.Scales = new System.Collections.ObjectModel.ObservableCollection <CircularScale>();
            CircularScale csItem = new CircularScale();

            csItem.StartValue            = 0;
            csItem.EndValue              = 100;
            csItem.SweepAngle            = 270;
            csItem.Interval              = 10;
            csItem.MinorTicksPerInterval = 4;

            csItem.Ranges = new CircularRangeCollection();
            csItem.Ranges.Add(new CircularRange()
            {
                StartValue = 0,
                EndValue   = 85,
                Stroke     = new LinearGradientBrush(Colors.LightGreen, Colors.DarkGreen, 45),
            });
            csItem.Ranges.Add(new CircularRange()
            {
                StartValue = 85,
                EndValue   = 95,
                Stroke     = new LinearGradientBrush(Colors.Yellow, Colors.Orange, 45),
            });
            csItem.Ranges.Add(new CircularRange()
            {
                StartValue = 95,
                EndValue   = 100,
                Stroke     = new LinearGradientBrush(Colors.Red, Colors.DarkRed, 45),
            });

            csItem.Pointers.Add(new CircularPointer()
            {
                PointerType                  = PointerType.NeedlePointer,
                Value                        = 0,
                NeedlePointerType            = NeedlePointerType.Triangle,
                NeedlePointerStrokeThickness = 15,
                NeedlePointerStroke          = new LinearGradientBrush(Colors.DarkGray, Colors.Black, 45),
                PointerCapStroke             = new SolidColorBrush(Colors.Black)
            });

            dcgCpuUsage.Scales.Add(csItem);

            this.Control = dcgCpuUsage;
        }
        public override void Refresh()
        {
            if (this.Control is SfCircularGauge)
            {
                SfCircularGauge dcgCpuUsage   = this.Control as SfCircularGauge;
                int             cpuTotalValue = Convert.ToInt32(Math.Round(cpuTotalCntr.NextValue(), 0));

                dcgCpuUsage.Scales[0].Pointers[0].Value = cpuTotalValue;
            }
        }
 public SfCircularGauge getMemoryGauge()
 {
     circularGaugeMemory = new SfCircularGauge();
     //circularGaugeMemory.GaugeHeight = Device.OnPlatform(iOS: 250, Android: 300, WinPhone: 200);
     //circularGaugeMemory.GaugeWidth = 300;
     //circularGaugeMemory.BackColor = Device.OnPlatform(iOS: Color.White, Android: Color.Black, WinPhone: Color.Black);
     //List<Scale> Scales = new List<Scale>();
     //Scale scale = new Scale();
     //scale.StartValue = 0;
     //scale.EndValue = 100;
     //scale.StartAngle = 180;
     //scale.SweepAngle = 180;
     //scale.Interval = 110;
     //scale.MinorTicksPerInterval = 0;
     //scale.LabelColor = Color.Transparent;
     //scale.MajorTickColor = Color.Transparent;
     //scale.LabelSize = 1;
     //scale.RimThickness = 40;
     //scale.MajorTicksHeight = 0;
     //scale.MinorTicksHeight = 0;
     //scale.RimColor = Color.FromHex("#FF565656");
     //Pointer pointer = new Pointer();
     //pointer.Value = 70;
     //pointer.NeedlePointerThickness = 10;
     //pointer.NeedlePointerColor = Color.FromHex("#FFE2E2E2");
     //pointer.NeedlePointerFactor = 1.2;
     //pointer.PointerKnobColor = Color.FromHex("#FFE2E2E2");
     //pointer.PointerKnobRadius = 30;
     //Pointer rPointer = new Pointer();
     //rPointer.Value = 70;
     //rPointer.IsNeedlePointer = false;
     //rPointer.RangePointerColor = Color.FromHex("#FF00B2DB");
     //rPointer.RangePointerThickness = 40;
     //rPointer.NeedlePointerFactor = 0;
     //Pointer dot = new Pointer();
     //dot.Value = 60;
     //dot.NeedlePointerThickness = 0;
     //dot.PointerKnobColor = Color.Black;
     //dot.PointerKnobRadius = 10;
     //dot.NeedlePointerFactor = 0;
     //List<Pointer> pointers = new List<Pointer>();
     //pointers.Add(rPointer);
     //pointers.Add(pointer);
     //pointers.Add(dot);
     //scale.Pointers = pointers;
     //Scales.Add(scale);
     //circularGaugeMemory.Scales = Scales;
     return circularGaugeMemory;
 }
示例#4
0
        private void circularGauge1_Loaded(object sender, RoutedEventArgs e)
        {
            Double           sum  = 0;
            MyDataCollection coll = this.FindResource("SeriesData1") as MyDataCollection;
            int i = 1;

            grid.Model[i, 1].CellValue           = "Year";
            grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center;
            grid.Model[i, 1].Background          = Brushes.Pink;
            grid.Model[i, 1].Font.FontWeight     = FontWeights.Bold;
            grid.Model[i, 2].CellValue           = "Revenue of the Year($ 1000)";
            grid.Model[i, 2].HorizontalAlignment = HorizontalAlignment.Center;
            grid.Model[i, 2].Background          = Brushes.Pink;
            grid.Model[i, 2].Font.FontWeight     = FontWeights.Bold;

            i++;
            if (coll != null)
            {
                foreach (MyData d in coll)
                {
                    sum += d.Y1;
                    grid.Model[i, 1].CellValue           = d.Year;
                    grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center;
                    grid.Model[i, 1].Background          = Brushes.Pink;
                    grid.Model[i, 1].Font.FontWeight     = FontWeights.Bold;

                    grid.Model[i, 2].CellValue           = "$" + d.Y1;
                    grid.Model[i, 2].HorizontalAlignment = HorizontalAlignment.Center;
                    grid.Model[i, 2].Background          = Brushes.Pink;
                    grid.Model[i, 2].Font.FontWeight     = FontWeights.Bold;

                    i++;
                }
            }
            grid.Model[i, 1].CellValue           = "Gauge indicating Average sales during the year 2003-2007";
            grid.Model[i, 1].HorizontalAlignment = HorizontalAlignment.Center;
            grid.Model[i, 1].Font.FontWeight     = FontWeights.Bold;

            SfCircularGauge cg = (sender as UserControl).Content as SfCircularGauge;

            _circulargauge = cg;
            CircularScale cs = cg.FindName("m_scale") as CircularScale;

            if (cs != null)
            {
                _circularpointer     = cs.Pointers[0];
                cs.Pointers[0].Value = sum / 5;
            }
        }
        public override void Refresh()
        {
            if (this.Control is SfCircularGauge)
            {
                SfCircularGauge dcgRamUsage       = this.Control as SfCircularGauge;
                long            valRamTotalMemory = PerformanceInfo.GetTotalMemoryInMiB();
                long            valRamTotal       = PerformanceInfo.GetTotalMemoryInMiB() - PerformanceInfo.GetPhysicalAvailableMemoryInMiB();
                int             valRamTakenPrc    = Convert.ToInt32(((double)valRamTotal / (double)valRamTotalMemory) * 100.0);

                dcgRamUsage.Scales[0].Pointers[0].Value     = valRamTakenPrc;
                (dcgRamUsage.GaugeHeader as TextBlock).Text = String.Format("RAM %{0}({1:0.00} {2})", Environment.NewLine,
                                                                            valRamTotal > 1024 ? Math.Round(valRamTotal / 1024.0, 2) : valRamTotal,
                                                                            valRamTotal > 1024 ? "GB" : "MB");
            }
        }
示例#6
0
        public override View GetSampleContent(Context con)
        {
            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartValue            = 0;
            scale.EndValue              = 100;
            scale.Interval              = 10;
            scale.StartAngle            = 135;
            scale.SweepAngle            = 270;
            scale.RimWidth              = 10;
            scale.RimColor              = Color.ParseColor("#E0E0E0");
            scale.LabelColor            = Color.Black;
            scale.LabelOffset           = 0.8;
            scale.ShowTicks             = false;
            scale.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();

            pointer              = new NeedlePointer();
            pointer.Value        = 60;
            pointer.KnobRadius   = 10;
            pointer.Color        = Color.ParseColor("#757575");
            pointer.KnobColor    = Color.ParseColor("#757575");
            pointer.LengthFactor = 0.6;
            pointer.Type         = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle;
            pointers.Add(pointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);
            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(sfCircularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
        public SalesAnalysisDemo()
        {
            this.InitializeComponent();
            this.Unloaded += SalesAnalysisDemo_Unloaded;

            revenueChart = grid.FindName("revenueChart") as UI.Xaml.Charts.SfChart;
            revenueChart.SelectionChanged += RevenueChart_SelectionChanged;
            if (AnalyticsInfo.VersionInfo.DeviceFamily != "Windows.Mobile")
            {
                chart1 = chart.FindName("sfchart") as UI.Xaml.Charts.SfChart;
                gauge1 = gauge.FindName("SalesGauge") as SfCircularGauge;
                gauge2 = gauge.FindName("SalesGauge2") as SfCircularGauge;
                gauge3 = gauge.FindName("SalesGauge3") as SfCircularGauge;
                gauge4 = gauge.FindName("SalesGauge4") as SfCircularGauge;
                revenueChart.Loaded += dataGrid_Loaded;
            }

            rangeNavigator               = navigator.FindName("chart_navigator") as SfDateTimeRangeNavigator;
            rangeNavigator.Loaded       += RangeNavigator_Loaded;
            rangeNavigator.ValueChanged += rangeNavigator_ValueChanged;
        }
        public override View GetSampleContent(Context con)
        {
            var density = con.Resources.DisplayMetrics.Density;

            LabelAnnotation1          = new TextView(con);
            LabelAnnotation1.Text     = "4:55PM";
            LabelAnnotation1.TextSize = 14;
            LabelAnnotation1.SetHeight(25);
            LabelAnnotation1.SetWidth(75);
            LabelAnnotation1.SetTextColor(Color.Black);
            LabelAnnotation1.TextAlignment = TextAlignment.Center;

            LabelAnnotation2          = new TextView(con);
            LabelAnnotation2.Text     = "10s";
            LabelAnnotation2.TextSize = 12;
            LabelAnnotation2.SetHeight(20);
            LabelAnnotation2.SetWidth(35);
            LabelAnnotation2.SetTextColor(Color.Black);
            LabelAnnotation2.TextAlignment = TextAlignment.Center;

            LabelAnnotation3          = new TextView(con);
            LabelAnnotation3.Text     = "55M";
            LabelAnnotation3.TextSize = 12;
            LabelAnnotation3.SetHeight(20);
            LabelAnnotation3.SetWidth(35);
            LabelAnnotation3.SetTextColor(Color.Black);
            LabelAnnotation3.TextAlignment = TextAlignment.Center;


            Annotation1 = new SfCircularGauge(con)
            {
                Annotations = new CircularGaugeAnnotationCollection
                {
                    new GaugeAnnotation {
                        View = LabelAnnotation2, Angle = 250, Offset = 0.7f
                    }
                },
                CircularScales = new ObservableCollection <CircularScale>
                {
                    new CircularScale
                    {
                        StartAngle     = 270,
                        SweepAngle     = 360,
                        ShowLabels     = false,
                        StartValue     = 0,
                        EndValue       = 60,
                        Interval       = 5,
                        RimColor       = Color.Rgb(237, 238, 239),
                        CircularRanges = new ObservableCollection <CircularRange>
                        {
                            new CircularRange {
                                StartValue = 0, EndValue = 30, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1
                            },
                        },
                        MajorTickSettings = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .85, Width = 2
                        },
                        MinorTickSettings = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .90, Width = 0.5
                        },
                        CircularPointers = new ObservableCollection <CircularPointer>
                        {
                            new NeedlePointer
                            {
                                Type = NeedleType.Triangle, KnobRadius = 4, Width = 3, EnableAnimation = false, KnobColor = Color.Black, Color = Color.Black
                            }
                        }
                    }
                }
            };

            LinearLayout layout1 = new LinearLayout(con);

            layout1.LayoutParameters = new LinearLayout.LayoutParams((int)(80 * density), (int)(80 * density));
            layout1.AddView(Annotation1);

            Annotation2 = new SfCircularGauge(con)
            {
                Annotations = new CircularGaugeAnnotationCollection
                {
                    new GaugeAnnotation {
                        View = LabelAnnotation3, Angle = 245, Offset = 0.7f
                    }
                },
                CircularScales = new ObservableCollection <CircularScale>
                {
                    new CircularScale
                    {
                        StartAngle     = 270,
                        SweepAngle     = 360,
                        StartValue     = 0,
                        EndValue       = 60,
                        Interval       = 5,
                        ShowLabels     = false,
                        RimColor       = Color.Rgb(237, 238, 239),
                        CircularRanges = new ObservableCollection <CircularRange>
                        {
                            new CircularRange {
                                StartValue = 0, EndValue = 30, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1
                            },
                        },
                        MajorTickSettings = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .85, Width = 2
                        },
                        MinorTickSettings = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .90, Width = 0.5
                        },
                        CircularPointers = new ObservableCollection <CircularPointer>
                        {
                            new NeedlePointer
                            {
                                Type = NeedleType.Triangle, KnobRadius = 4, Width = 3, EnableAnimation = false, KnobColor = Color.Black, Color = Color.Black
                            }
                        }
                    }
                }
            };

            LinearLayout layout2 = new LinearLayout(con);

            layout2.LayoutParameters = new LinearLayout.LayoutParams((int)(80 * density), (int)(80 * density));
            layout2.AddView(Annotation2);

            Gauge = new SfCircularGauge(con)
            {
                Annotations = new CircularGaugeAnnotationCollection
                {
                    new GaugeAnnotation {
                        View = layout1, Angle = 90, Offset = .5f
                    },
                    new GaugeAnnotation {
                        View = LabelAnnotation1, Angle = 00, Offset = .3f
                    },
                    new GaugeAnnotation {
                        View = layout2, Angle = 180, Offset = .5f
                    },
                },
                CircularScales = new ObservableCollection <CircularScale>
                {
                    new CircularScale
                    {
                        StartValue            = 0,
                        EndValue              = 12,
                        Interval              = 1,
                        MinorTicksPerInterval = 4,
                        RimColor              = Color.Rgb(237, 238, 239),
                        LabelColor            = Color.Gray,
                        LabelOffset           = .8,
                        ScaleEndOffset        = .925,
                        StartAngle            = 270,
                        SweepAngle            = 360,
                        LabelTextSize         = 14,
                        ShowFirstLabel        = false,
                        MinorTickSettings     = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .95, Width = 1
                        },
                        MajorTickSettings = new TickSetting {
                            Color = Color.Black, StartOffset = 1, EndOffset = .9, Width = 3
                        },
                        CircularRanges = new ObservableCollection <CircularRange>
                        {
                            new CircularRange {
                                StartValue = 0, EndValue = 3, Color = Color.Gray, InnerStartOffset = 0.925, OuterStartOffset = 1, InnerEndOffset = 0.925, OuterEndOffset = 1
                            },
                        },
                        CircularPointers = new ObservableCollection <CircularPointer>
                        {
                            new NeedlePointer {
                                EnableAnimation = false, KnobRadius = 6, LengthFactor = .75, KnobColor = Color.White, Color = Color.Black, Width = 3.5, KnobStrokeColor = Color.Black, KnobStrokeWidth = 5, TailLengthFactor = 0.25, TailColor = Color.Black
                            },
                            new NeedlePointer {
                                EnableAnimation = false, KnobRadius = 6, LengthFactor = .4, KnobColor = Color.White, Color = Color.Black, Width = 5, Type = NeedleType.Triangle
                            },
                            new NeedlePointer {
                                EnableAnimation = false, KnobRadius = 6, LengthFactor = .65, KnobColor = Color.White, Color = Color.Black, Width = 5, Type = NeedleType.Triangle
                            },
                        }
                    }
                }
            };

            DynamicUpdate();

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(Gauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SfCircularGauge circularGauge = new SfCircularGauge(this);

            circularGauge.SetBackgroundColor(Color.White);
            ObservableCollection <CircularScale> scales = new ObservableCollection <CircularScale>();



            CircularScale scale1 = new CircularScale();

            scale1.ShowTicks        = false;
            scale1.StartValue       = 0;
            scale1.EndValue         = 100;
            scale1.StartAngle       = 160;
            scale1.SweepAngle       = 220;
            scale1.ShowLabels       = false;
            scale1.RimColor         = Color.ParseColor("#f4deeb");
            scale1.ScaleStartOffset = 0.9;
            scale1.ScaleEndOffset   = 0.5;


            CircularRange range1 = new CircularRange();

            range1.StartValue       = 0;
            range1.EndValue         = 70;
            range1.OuterStartOffset = 0.9;
            range1.OuterEndOffset   = 0.9;
            range1.InnerStartOffset = 0.7;
            range1.InnerEndOffset   = 0.7;
            scale1.CircularRanges.Add(range1);

            ObservableCollection <GaugeGradientStop> gradientColor1 = new ObservableCollection <GaugeGradientStop>();

            GaugeGradientStop gaugeGradientStop = new GaugeGradientStop();

            gaugeGradientStop.Value = 0;
            gaugeGradientStop.Color = Color.WhiteSmoke;
            gradientColor1.Add(gaugeGradientStop);

            GaugeGradientStop gaugeGradientStop1 = new GaugeGradientStop();

            gaugeGradientStop1.Value = 50;
            gaugeGradientStop1.Color = Color.Olive;
            gradientColor1.Add(gaugeGradientStop1);

            CircularRange range2 = new CircularRange();

            range2.StartValue       = 0;
            range2.EndValue         = 40;
            range2.OuterStartOffset = 0.7;
            range2.OuterEndOffset   = 0.7;
            range2.InnerStartOffset = 0.5;
            range2.InnerEndOffset   = 0.5;


            ObservableCollection <GaugeGradientStop> gradientColor2 = new ObservableCollection <GaugeGradientStop>();


            GaugeGradientStop gaugeGradientStop2 = new GaugeGradientStop();

            gaugeGradientStop2.Value = 0;
            gaugeGradientStop2.Color = Color.ParseColor("#d5f7cd");
            gradientColor2.Add(gaugeGradientStop2);

            GaugeGradientStop gaugeGradientStop3 = new GaugeGradientStop();

            gaugeGradientStop3.Value = 20;
            gaugeGradientStop3.Color = Color.ParseColor("#5af736");
            gradientColor2.Add(gaugeGradientStop3);

            GaugeGradientStop gaugeGradientStop4 = new GaugeGradientStop();

            gaugeGradientStop4.Value = 35;
            gaugeGradientStop4.Color = Color.DarkGreen;
            gradientColor2.Add(gaugeGradientStop4);

            range1.GradientStops = gradientColor1;
            range2.GradientStops = gradientColor2;

            scale1.CircularRanges.Add(range1);
            scale1.CircularRanges.Add(range2);

            scales.Add(scale1);



            circularGauge.CircularScales = scales;

            SetContentView(circularGauge);
        }
示例#10
0
        public override View GetSampleContent(Context con)
        {
            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();

            scale                               = new CircularScale();
            scale.StartValue                    = 0;
            scale.EndValue                      = 240;
            scale.Interval                      = 20;
            scale.StartAngle                    = 135;
            scale.SweepAngle                    = 270;
            scale.RimColor                      = Color.ParseColor("#C62E0A");
            scale.LabelColor                    = Color.ParseColor("#C62E0A");
            scale.LabelOffset                   = 0.88;
            scale.ScaleStartOffset              = 0.7;
            scale.ScaleEndOffset                = 0.69;
            scale.MinorTicksPerInterval         = 1;
            scale.MajorTickSettings.StartOffset = 0.7;
            scale.MajorTickSettings.EndOffset   = 0.77;
            scale.MajorTickSettings.Width       = 2;
            scale.MajorTickSettings.Color       = Color.ParseColor("#C62E0A");
            scale.MinorTickSettings.StartOffset = 0.7;
            scale.MinorTickSettings.EndOffset   = 0.75;
            scale.MinorTickSettings.Width       = 2;
            scale.MinorTickSettings.Color       = Color.ParseColor("#C62E0A");

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();
            MarkerPointer markerPointer = new MarkerPointer();

            markerPointer.Value           = 120;
            markerPointer.Color           = Color.ParseColor("#C62E0A");
            markerPointer.Offset          = 0.69;
            markerPointer.MarkerShape     = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle;
            markerPointer.EnableAnimation = false;
            pointers.Add(markerPointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);

            circularScale2                               = new CircularScale();
            circularScale2.StartAngle                    = 135;
            circularScale2.SweepAngle                    = 270;
            circularScale2.StartValue                    = 0;
            circularScale2.EndValue                      = 160;
            circularScale2.Interval                      = 40;
            circularScale2.MinorTicksPerInterval         = 1;
            circularScale2.RimColor                      = Color.ParseColor("#333333");
            circularScale2.LabelOffset                   = 0.45;
            circularScale2.LabelColor                    = Color.ParseColor("#333333");
            circularScale2.ScaleStartOffset              = 0.65;
            circularScale2.ScaleEndOffset                = 0.64;
            circularScale2.MajorTickSettings.StartOffset = 0.64;
            circularScale2.MajorTickSettings.EndOffset   = 0.57;
            circularScale2.MajorTickSettings.Width       = 2;
            circularScale2.MajorTickSettings.Color       = Color.ParseColor("#333333");
            circularScale2.MinorTickSettings.StartOffset = 0.64;
            circularScale2.MinorTickSettings.EndOffset   = 0.59;
            circularScale2.MinorTickSettings.Width       = 2;
            circularScale2.MinorTickSettings.Color       = Color.ParseColor("#333333");

            ObservableCollection <CircularPointer> circularPointers = new ObservableCollection <CircularPointer>();
            MarkerPointer markerPointer1 = new MarkerPointer();

            markerPointer1.Value           = 80;
            markerPointer1.Color           = Color.ParseColor("#333333");
            markerPointer1.Offset          = 0.65;
            markerPointer1.MarkerShape     = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Triangle;
            markerPointer1.EnableAnimation = false;
            circularPointers.Add(markerPointer1);

            circularScale2.CircularPointers = circularPointers;
            circularScales.Add(circularScale2);

            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(sfCircularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
        public MainWindow()
        {
            InitializeComponent();

            //Initializing circular gauge
            SfCircularGauge sfCircularGauge = new SfCircularGauge();

            sfCircularGauge.Height = 250;
            sfCircularGauge.Width  = 250;

            //Adding header
            sfCircularGauge.HeaderAlignment     = HeaderAlignment.Custom;
            sfCircularGauge.GaugeHeaderPosition = new Point(0.63, 0.75);
            TextBlock textBlock = new TextBlock();

            textBlock.Text              = "Temperature (K)";
            textBlock.Height            = 40;
            textBlock.Width             = 140;
            textBlock.FontSize          = 13;
            textBlock.Foreground        = new SolidColorBrush(Colors.Black);
            textBlock.FontWeight        = FontWeights.SemiBold;
            sfCircularGauge.GaugeHeader = textBlock;

            //Initializing scales for circular gauge
            CircularScale mainscale = new CircularScale();

            mainscale.RimStroke          = new SolidColorBrush(Colors.LightGray);
            mainscale.RimStrokeThickness = 3;
            mainscale.LabelOffset        = 0.1;

            MajorTickSetting majorTickSetting = new MajorTickSetting();

            majorTickSetting.StrokeThickness = 1;
            majorTickSetting.Length          = 10;
            mainscale.MajorTickSettings      = majorTickSetting;

            MinorTickSetting minorTickSetting = new MinorTickSetting();

            minorTickSetting.StrokeThickness = 1;
            minorTickSetting.Length          = 5;
            mainscale.MinorTickSettings      = minorTickSetting;

            //Adding range
            CircularRange circularRange = new CircularRange();

            circularRange.StartValue = 0;
            circularRange.EndValue   = 60;
            circularRange.Stroke     = new SolidColorBrush(Colors.Gray);
            mainscale.Ranges.Add(circularRange);

            //Adding needle pointer
            CircularPointer circularPointer = new CircularPointer();

            circularPointer.PointerType                  = PointerType.NeedlePointer;
            circularPointer.Value                        = 60;
            circularPointer.NeedleLengthFactor           = 0.5;
            circularPointer.NeedlePointerType            = NeedlePointerType.Triangle;
            circularPointer.PointerCapDiameter           = 12;
            circularPointer.NeedlePointerStroke          = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575");
            circularPointer.KnobFill                     = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575");
            circularPointer.KnobStroke                   = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575");
            circularPointer.NeedlePointerStrokeThickness = 7;
            mainscale.Pointers.Add(circularPointer);

            //Adding range pointer
            CircularPointer circularPointer1 = new CircularPointer();

            circularPointer1.PointerType = PointerType.RangePointer;
            circularPointer1.Value       = 40;
            circularPointer1.RangePointerStrokeThickness = 5;
            circularPointer1.RangePointerStroke          = (SolidColorBrush) new BrushConverter().ConvertFrom("#27beb6");
            mainscale.Pointers.Add(circularPointer1);

            //Adding symbol pointer
            CircularPointer circularPointer2 = new CircularPointer();

            circularPointer2.PointerType         = PointerType.SymbolPointer;
            circularPointer2.Value               = 70;
            circularPointer2.SymbolPointerHeight = 12;
            circularPointer2.SymbolPointerWidth  = 12;
            circularPointer2.Symbol              = Symbol.InvertedTriangle;
            circularPointer2.SymbolPointerStroke = (SolidColorBrush) new BrushConverter().ConvertFrom("#757575");
            mainscale.Pointers.Add(circularPointer2);

            sfCircularGauge.Scales.Add(mainscale);

            this.Content = sfCircularGauge;
        }
        SfCircularGauge getCircularGauge()
        {
            if (this.ContentView == null)
            {
                circularGauge = new SfCircularGauge();
                ObservableCollection<Scale> scales = new ObservableCollection<Scale>();
                circularGauge.VerticalOptions = LayoutOptions.CenterAndExpand;
                //Scales
                scale = new Scale();
                scale.StartValue = 0;
                scale.EndValue = 100;
                scale.Interval = 10;
                scale.StartAngle = 135;
                scale.SweepAngle = 270;
                scale.RimThickness = 20;
                scale.RimColor = Color.FromHex("#d14646");
                scale.LabelColor = Color.Gray;
                scale.LabelOffset = 0.1;
                scale.MinorTicksPerInterval = 0;
                List<Pointer> pointers = new List<Pointer>();

                needlePointer = new NeedlePointer();
                needlePointer.Value = 60;
                needlePointer.Color = Color.Gray;
                needlePointer.KnobRadius = 20;
                needlePointer.KnobColor = Color.FromHex("#2bbfb8");
                needlePointer.Thickness = 5;
                needlePointer.LengthFactor = 0.8;
                needlePointer.Type = PointerType.Bar;

                rangePointer = new RangePointer();
                rangePointer.Value = 60;
                rangePointer.Color = Color.FromHex("#2bbfb8");
                rangePointer.Thickness = 20;
                pointers.Add(needlePointer);
                pointers.Add(rangePointer);

                TickSettings minor = new TickSettings();
                minor.Length = 4;
                minor.Color = Color.FromHex("#444444");
                minor.Thickness = 3;
                scale.MinorTickSettings = minor;

                major = new TickSettings();
                major.Length = 12;
                major.Color = Color.FromHex("#444444");
                major.Thickness = 3;
                major.Offset = Device.OnPlatform(0.05, 0.1,0.3);
                scale.MajorTickSettings = major;
                scale.Pointers = pointers;
                scales.Add(scale);
                circularGauge.Scales = scales;

                Header header = new Header();
                header.Text = "Speedmeter";
                header.TextSize = 20;
                header.Position = Device.OnPlatform(iOS: new Point(.3, .7), Android: new Point(0.38, 0.7), WinPhone: new Point(0.38, 0.7));
                header.ForegroundColor = Color.Gray;
                circularGauge.Headers.Add(header);
            }
            return circularGauge;
        }
        public override View GetSampleContent (Context con)
		{
            circularGauge = new SfCircularGauge(con);

            ObservableCollection<CircularScale> _circularScales = new ObservableCollection<CircularScale>();
            ObservableCollection<CircularPointer> _circularPointers = new ObservableCollection<CircularPointer>();
            ObservableCollection<Header> _gaugeHeaders = new ObservableCollection<Header>();
            // adding  new CircularScale
            circularScale = new CircularScale();
            circularScale.StartValue = 0;
            circularScale.EndValue = 100;
            circularScale.StartAngle = 130;
            circularScale.SweepAngle = 280;
            circularScale.RimWidth = 10;
            circularScale.RimColor = Color.ParseColor("#D14646");
            circularScale.MinorTicksPerInterval = 0;
            circularScale.LabelOffset = labelsOffset;
            circularScale.LabelTextSize = 18;

            //adding major ticks
            majorTickstings = new TickSetting();
            majorTickstings.Color = Color.ParseColor("#444444");
            majorTickstings.Size = 15;
            majorTickstings.Offset = ticksOffset;
            circularScale.MajorTickSettings = majorTickstings;

            //adding minor ticks
            TickSetting minorTickstings = new TickSetting();
            minorTickstings.Color = Color.Gray;
            circularScale.MinorTickSettings = minorTickstings;

            // adding needle Pointer
            needlePointer = new NeedlePointer();
            needlePointer.Value = pointerValue;
            needlePointer.KnobColor = Color.ParseColor("#2BBFB8");
            needlePointer.KnobRadius = 20;
            needlePointer.Type = NeedleType.Bar;
            needlePointer.LengthFactor = 0.8;
            needlePointer.Width = 3;
            needlePointer.Color = Color.Gray;
            _circularPointers.Add(needlePointer);

            // adding range Pointer
            rangePointer = new RangePointer();
            rangePointer.Value = pointerValue;
            rangePointer.Color = Color.ParseColor("#2BBFB8");
            rangePointer.Width = 10;
            _circularPointers.Add(rangePointer);

            circularScale.CircularPointers = _circularPointers;
            _circularScales.Add(circularScale);

            //adding header
            Header circularGaugeHeader = new Header();
            circularGaugeHeader.Text = "Speedometer";
            circularGaugeHeader.TextColor = Color.Gray;
            circularGaugeHeader.Position = new PointF((float)0.38, (float)0.7);
            circularGaugeHeader.TextSize = 20;
            _gaugeHeaders.Add(circularGaugeHeader);
            circularGauge.Headers = _gaugeHeaders;
            circularGauge.CircularScales = _circularScales;
            circularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);
            linearLayout.AddView(circularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return linearLayout;
		}
        public override View GetSampleContent(Context con)
        {
            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartAngle                    = 270;
            scale.StartValue                    = 0;
            scale.EndValue                      = 16;
            scale.Interval                      = 2;
            scale.LabelOffset                   = 0.75;
            scale.SweepAngle                    = 360;
            scale.MinorTicksPerInterval         = 1;
            scale.ShowLastLabel                 = false;
            scale.ScaleStartOffset              = 0.99;
            scale.ScaleEndOffset                = 0.9;
            scale.LabelCreated                 += Scale_LabelCreated;
            scale.RimColor                      = Color.ParseColor("#E0E0E0");
            scale.LabelColor                    = Color.ParseColor("#4B4B4B");
            scale.MajorTickSettings.StartOffset = 0.9;
            scale.MajorTickSettings.EndOffset   = 0.83;
            scale.MajorTickSettings.Width       = 2;
            scale.MajorTickSettings.Color       = Color.ParseColor("#9E9E9E");
            scale.MinorTickSettings.StartOffset = 0.9;
            scale.MinorTickSettings.EndOffset   = 0.85;
            scale.MinorTickSettings.Width       = 2;
            scale.MinorTickSettings.Color       = Color.ParseColor("#9E9E9E");

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();

            pointer                  = new NeedlePointer();
            pointer.Value            = 14;
            pointer.Color            = Color.ParseColor("#f03e3e");
            pointer.Type             = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle;
            pointer.LengthFactor     = 0.65;
            pointer.Width            = 20;
            pointer.KnobRadiusFactor = 0;
            pointer.KnobColor        = Color.White;
            pointer.KnobStrokeWidth  = 3;
            pointer.KnobStrokeColor  = Color.White;
            pointer.EnableAnimation  = false;
            pointers.Add(pointer);

            NeedlePointer needlePointer = new NeedlePointer();

            needlePointer.Value            = 6;
            needlePointer.Type             = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle;
            needlePointer.LengthFactor     = 0.65;
            needlePointer.Width            = 20;
            needlePointer.Color            = Color.ParseColor("#9E9E9E");
            needlePointer.KnobRadiusFactor = 0.11;
            needlePointer.KnobColor        = Color.White;
            needlePointer.KnobStrokeWidth  = 3;
            needlePointer.KnobStrokeColor  = Color.White;
            needlePointer.EnableAnimation  = false;
            pointers.Add(needlePointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);
            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(sfCircularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
        public override View GetSampleContent(Context con)
        {
            circularGauge = new SfCircularGauge(con);

            ObservableCollection <CircularScale>   _circularScales   = new ObservableCollection <CircularScale>();
            ObservableCollection <CircularPointer> _circularPointers = new ObservableCollection <CircularPointer>();
            ObservableCollection <Header>          _gaugeHeaders     = new ObservableCollection <Header>();

            // adding  new CircularScale
            circularScale                       = new CircularScale();
            circularScale.StartValue            = 0;
            circularScale.EndValue              = 100;
            circularScale.StartAngle            = 130;
            circularScale.SweepAngle            = 280;
            circularScale.RimWidth              = 10;
            circularScale.RimColor              = Color.ParseColor("#D14646");
            circularScale.MinorTicksPerInterval = 0;
            circularScale.LabelOffset           = labelsOffset;
            circularScale.LabelTextSize         = 18;

            //adding major ticks
            majorTickstings                 = new TickSetting();
            majorTickstings.Color           = Color.ParseColor("#444444");
            majorTickstings.Size            = 15;
            majorTickstings.Offset          = ticksOffset;
            circularScale.MajorTickSettings = majorTickstings;

            //adding minor ticks
            TickSetting minorTickstings = new TickSetting();

            minorTickstings.Color           = Color.Gray;
            circularScale.MinorTickSettings = minorTickstings;

            // adding needle Pointer
            needlePointer              = new NeedlePointer();
            needlePointer.Value        = pointerValue;
            needlePointer.KnobColor    = Color.ParseColor("#2BBFB8");
            needlePointer.KnobRadius   = 20;
            needlePointer.Type         = NeedleType.Bar;
            needlePointer.LengthFactor = 0.8;
            needlePointer.Width        = 3;
            needlePointer.Color        = Color.Gray;
            _circularPointers.Add(needlePointer);

            // adding range Pointer
            rangePointer       = new RangePointer();
            rangePointer.Value = pointerValue;
            rangePointer.Color = Color.ParseColor("#2BBFB8");
            rangePointer.Width = 10;
            _circularPointers.Add(rangePointer);

            circularScale.CircularPointers = _circularPointers;
            _circularScales.Add(circularScale);

            //adding header
            Header circularGaugeHeader = new Header();

            circularGaugeHeader.Text      = "Speedometer";
            circularGaugeHeader.TextColor = Color.Gray;
            circularGaugeHeader.Position  = new PointF((float)0.38, (float)0.7);
            circularGaugeHeader.TextSize  = 20;
            _gaugeHeaders.Add(circularGaugeHeader);
            circularGauge.Headers        = _gaugeHeaders;
            circularGauge.CircularScales = _circularScales;
            circularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(circularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
示例#16
0
        public override View GetSampleContent(Context context)
        {
            deviceDensity = context.Resources.DisplayMetrics.Density;
            SfCircularGauge sfCircularGauge = new SfCircularGauge(context);

            ObservableCollection <Header> headers = new ObservableCollection <Header>();

            header           = new Header();
            header.Text      = "08" + " h" + " 00" + " min";
            header.TextSize  = 25;
            header.TextColor = Color.ParseColor("#FF4500");
            header.TextStyle = Typeface.DefaultBold;
            header.Position  = new PointF((float)0.5, (float)0.5);
            headers.Add(header);
            sfCircularGauge.Headers = headers;

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartValue            = 0;
            scale.EndValue              = 12;
            scale.Interval              = 1;
            scale.StartAngle            = 270;
            scale.SweepAngle            = 360;
            scale.LabelOffset           = 0.67;
            scale.ScaleStartOffset      = 0.9;
            scale.ScaleEndOffset        = 0.8;
            scale.ShowFirstLabel        = false;
            scale.MinorTicksPerInterval = 4;
            scale.MajorTickSettings     = new TickSetting()
            {
                StartOffset = 0.8,
                EndOffset   = 0.72,
                Width       = 2,
                Color       = Color.DarkGray
            };
            scale.MinorTickSettings = new TickSetting()
            {
                StartOffset = 0.8,
                EndOffset   = 0.75
            };

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();

            markerPointer1 = new MarkerPointer();
            markerPointer1.EnableDragging               = true;
            markerPointer1.EnableAnimation              = false;
            markerPointer1.Value                        = firstMarkerValue;
            markerPointer1.Color                        = Color.ParseColor("#F7CE72");
            markerPointer1.Offset                       = 0.9;
            markerPointer1.MarkerShape                  = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Circle;
            markerPointer1.ValueChanging               += MarkerPointer1_ValueChanging;
            markerPointer1.PointerPositionChangedEvent += MarkerPointer1_PointerPositionChangedEvent;
            pointers.Add(markerPointer1);

            markerPointer2 = new MarkerPointer();
            markerPointer2.EnableDragging               = true;
            markerPointer2.EnableAnimation              = false;
            markerPointer2.Value                        = secondMarkerValue;
            markerPointer2.Color                        = Color.ParseColor("#F7CE72");
            markerPointer2.Offset                       = 0.9;
            markerPointer2.MarkerShape                  = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Circle;
            markerPointer2.ValueChanging               += MarkerPointer2_ValueChanging;
            markerPointer2.PointerPositionChangedEvent += MarkerPointer2_PointerPositionChangedEvent;
            pointers.Add(markerPointer2);

            markerPointer2.StepFrequency = markerPointer1.StepFrequency = 0.2;

            range                  = new CircularRange();
            range.StartValue       = markerPointer1.Value;
            range.EndValue         = markerPointer2.Value;
            range.InnerStartOffset = 0.8;
            range.InnerEndOffset   = 0.8;
            range.OuterStartOffset = 0.9;
            range.OuterEndOffset   = 0.9;
            range.Color            = Color.ParseColor("#E57982");
            scale.CircularRanges.Add(range);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);

            sfCircularGauge.CircularScales = circularScales;
            sfCircularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(context);

            linearLayout.AddView(sfCircularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            linearLayout.LayoutChange += LinearLayout_LayoutChange;
            return(linearLayout);
        }
        public override View GetSampleContent(Context con)
        {
            DisplayMetrics displayMetrics = con.Resources.DisplayMetrics;
            float          screenHeight   = displayMetrics.HeightPixels;

            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <Header> headers = new ObservableCollection <Header>();

            header           = new Header();
            header.Text      = Math.Round((double)800, 2) + " GB";
            header.TextSize  = 24;
            header.TextColor = Color.Black;
            header.Position  = new PointF((float)0.5, (float)0.1);
            headers.Add(header);
            sfCircularGauge.Headers = headers;

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartAngle            = 210;
            scale.SweepAngle            = 120;
            scale.StartValue            = 0;
            scale.EndValue              = 1000;
            scale.Interval              = 500;
            scale.ShowLabels            = false;
            scale.ShowTicks             = false;
            scale.ShowRim               = false;
            scale.MinorTicksPerInterval = 0;

            ObservableCollection <CircularRange> ranges = new ObservableCollection <CircularRange>();

            circularRange            = new CircularRange();
            circularRange.StartValue = 0;
            circularRange.EndValue   = 1000;
            circularRange.Color      = Color.ParseColor("#E0E0E0");
            circularRange.Offset     = 0.7;
            circularRange.Width      = 30;
            ranges.Add(circularRange);
            scale.CircularRanges = ranges;

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();

            rangePointer                 = new RangePointer();
            rangePointer.Value           = 800;
            rangePointer.Color           = Color.ParseColor("#FFDD00");
            rangePointer.Width           = 30;
            rangePointer.Offset          = 0.7;
            rangePointer.EnableAnimation = false;
            pointers.Add(rangePointer);

            needlePointer                  = new NeedlePointer();
            needlePointer.Value            = 800;
            needlePointer.Color            = Color.ParseColor("#424242");
            needlePointer.Type             = Com.Syncfusion.Gauges.SfCircularGauge.Enums.NeedleType.Triangle;
            needlePointer.LengthFactor     = 0.7;
            needlePointer.Width            = 10;
            needlePointer.KnobRadiusFactor = 0.1;
            needlePointer.KnobColor        = Color.ParseColor("#424242");
            pointers.Add(needlePointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);
            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);

            SfCircularGauge circularGauge = new SfCircularGauge(con);

            ObservableCollection <Header> headers1 = new ObservableCollection <Header>();

            header1           = new Header();
            header1.Text      = Math.Round((double)800, 2) + " GB";
            header1.TextSize  = 24;
            header1.TextColor = Color.Black;
            header1.Position  = new PointF((float)0.5, (float)0.5);
            headers1.Add(header1);

            Header header2 = new Header();

            header2.Text      = "Used";
            header2.TextSize  = 18;
            header2.TextColor = Color.Gray;
            header2.Position  = new PointF((float)0.5, (float)0.6);
            headers1.Add(header2);

            circularGauge.Headers = headers1;

            ObservableCollection <CircularScale> circularScales1 = new ObservableCollection <CircularScale>();
            CircularScale scale1 = new CircularScale();

            scale1.StartAngle            = 90;
            scale1.SweepAngle            = 360;
            scale1.StartValue            = 0;
            scale1.EndValue              = 1000;
            scale1.Interval              = 500;
            scale1.ShowLabels            = false;
            scale1.ShowTicks             = false;
            scale1.ShowRim               = false;
            scale1.MinorTicksPerInterval = 0;

            ObservableCollection <CircularRange> ranges1 = new ObservableCollection <CircularRange>();

            circularRange1            = new CircularRange();
            circularRange1.StartValue = 0;
            circularRange1.EndValue   = 999.9;
            circularRange1.Color      = Color.ParseColor("#E0E0E0");
            circularRange1.Offset     = 0.8;
            circularRange1.Width      = 30;
            ranges1.Add(circularRange1);
            scale1.CircularRanges = ranges1;

            ObservableCollection <CircularPointer> pointers1 = new ObservableCollection <CircularPointer>();

            rangePointer1                 = new RangePointer();
            rangePointer1.Value           = 800;
            rangePointer1.Color           = Color.ParseColor("#FFDD00");
            rangePointer1.Width           = 30;
            rangePointer1.Offset          = 0.8;
            rangePointer1.EnableAnimation = false;
            pointers1.Add(rangePointer1);

            scale1.CircularPointers = pointers1;

            circularScales1.Add(scale1);
            circularGauge.CircularScales = circularScales1;

            circularGauge.SetBackgroundColor(Color.White);

            LinearLayout outerLinearLayout = (LinearLayout)sfCircularGauge.FindViewById(Resource.Id.linearLayout);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.Orientation      = Orientation.Vertical;
            linearLayout.LayoutParameters = new LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent);
            linearLayout.AddView(sfCircularGauge, LayoutParams.WrapContent, (int)(screenHeight / 2.7));
            linearLayout.AddView(circularGauge, LayoutParams.WrapContent, (int)(screenHeight / 2.7));
            linearLayout.SetBackgroundColor(Color.White);
            linearLayout.SetPadding(30, 30, 30, 30);
            ScrollView mainView = new ScrollView(con);

            mainView.AddView(linearLayout);


            return(mainView);
        }
示例#18
0
        public override View GetSampleContent(Context con)
        {
            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <Header> headers = new ObservableCollection <Header>();
            Header header = new Header();

            header.Text      = "0";
            header.TextSize  = 20;
            header.TextColor = Color.ParseColor("#F03E3E");
            header.Position  = new PointF((float)0.28, (float)0.86);
            headers.Add(header);

            Header header1 = new Header();

            header1.Text      = "100";
            header1.TextSize  = 20;
            header1.TextColor = Color.ParseColor("#30B32D");
            header1.Position  = new PointF((float)0.75, (float)0.86);
            headers.Add(header1);

            Header header2 = new Header();

            header2.Text      = "55%";
            header2.TextSize  = 20;
            header2.TextColor = Color.ParseColor("#F03E3E");
            header2.Position  = new PointF((float)0.5, (float)0.5);
            headers.Add(header2);
            sfCircularGauge.Headers = headers;

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartValue = 0;
            scale.EndValue   = 100;
            scale.Interval   = 10;
            scale.ShowRim    = false;
            scale.ShowTicks  = false;
            scale.ShowLabels = false;

            ObservableCollection <CircularRange> ranges = new ObservableCollection <CircularRange>();
            CircularRange circularRange = new CircularRange();

            circularRange.Offset     = 0.8;
            circularRange.StartValue = 0;
            circularRange.EndValue   = 100;
            circularRange.Width      = 25;

            ObservableCollection <GaugeGradientStop> gradients = new ObservableCollection <GaugeGradientStop>();
            GaugeGradientStop gaugeGradientStop = new GaugeGradientStop();

            gaugeGradientStop.Value = 0;
            gaugeGradientStop.Color = Color.ParseColor("#F03E3E");
            gradients.Add(gaugeGradientStop);
            GaugeGradientStop gaugeGradientStop1 = new GaugeGradientStop();

            gaugeGradientStop1.Value = 35;
            gaugeGradientStop1.Color = Color.ParseColor("#FFDD00");
            gradients.Add(gaugeGradientStop1);
            GaugeGradientStop gaugeGradientStop2 = new GaugeGradientStop();

            gaugeGradientStop2.Value = 75;
            gaugeGradientStop2.Color = Color.ParseColor("#FFDD00");
            gradients.Add(gaugeGradientStop2);
            GaugeGradientStop gaugeGradientStop3 = new GaugeGradientStop();

            gaugeGradientStop3.Value = 100;
            gaugeGradientStop3.Color = Color.ParseColor("#30B32D");
            gradients.Add(gaugeGradientStop3);
            circularRange.GradientStops = gradients;
            ranges.Add(circularRange);
            scale.CircularRanges = ranges;

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();
            MarkerPointer markerPointer = new MarkerPointer();

            markerPointer.MarkerShape  = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle;
            markerPointer.Offset       = 0.8;
            markerPointer.MarkerHeight = 15;
            markerPointer.MarkerWidth  = 15;
            markerPointer.Value        = 55;
            markerPointer.Color        = Color.Red;
            pointers.Add(markerPointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);
            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.AddView(sfCircularGauge);
            linearLayout.SetPadding(30, 30, 30, 30);
            linearLayout.SetBackgroundColor(Color.White);
            return(linearLayout);
        }
示例#19
0
        public override View GetSampleContent(Context con)
        {
            SfCircularGauge sfCircularGauge = new SfCircularGauge(con);

            ObservableCollection <Header> headers = new ObservableCollection <Header>();
            Header header = new Header();

            header.Text      = "Inverted Traingle";
            header.TextSize  = 18;
            header.TextColor = Color.Black;
            header.Position  = new PointF((float)0.5, (float)0.6);
            headers.Add(header);
            sfCircularGauge.Headers = headers;

            ObservableCollection <CircularScale> circularScales = new ObservableCollection <CircularScale>();
            CircularScale scale = new CircularScale();

            scale.StartAngle            = 180;
            scale.SweepAngle            = 180;
            scale.ScaleStartOffset      = 0.7;
            scale.ScaleEndOffset        = 0.68;
            scale.StartValue            = 0;
            scale.EndValue              = 100;
            scale.RimColor              = Color.Gray;
            scale.Interval              = 50;
            scale.ShowLabels            = false;
            scale.ShowTicks             = false;
            scale.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers = new ObservableCollection <CircularPointer>();
            MarkerPointer markerPointer = new MarkerPointer();

            markerPointer.Value       = 80;
            markerPointer.Color       = Color.ParseColor("#00bdae");
            markerPointer.Offset      = 0.7;
            markerPointer.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.InvertedTriangle;
            pointers.Add(markerPointer);

            scale.CircularPointers = pointers;
            circularScales.Add(scale);

            sfCircularGauge.CircularScales = circularScales;

            sfCircularGauge.SetBackgroundColor(Color.White);
            //triangle

            SfCircularGauge sfCircularGauge1 = new SfCircularGauge(con);

            ObservableCollection <Header> headers1 = new ObservableCollection <Header>();
            Header header1 = new Header();

            header1.Text      = "Traingle";
            header1.TextSize  = 18;
            header1.TextColor = Color.Black;
            header1.Position  = new PointF((float)0.5, (float)0.6);
            headers1.Add(header1);
            sfCircularGauge1.Headers = headers1;

            ObservableCollection <CircularScale> circularScales1 = new ObservableCollection <CircularScale>();
            CircularScale scale1 = new CircularScale();

            scale1.StartAngle            = 180;
            scale1.SweepAngle            = 180;
            scale1.ScaleStartOffset      = 0.7;
            scale1.ScaleEndOffset        = 0.68;
            scale1.StartValue            = 0;
            scale1.EndValue              = 100;
            scale1.RimColor              = Color.Gray;
            scale1.Interval              = 50;
            scale1.ShowLabels            = false;
            scale1.ShowTicks             = false;
            scale1.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers1 = new ObservableCollection <CircularPointer>();
            MarkerPointer markerPointer1 = new MarkerPointer();

            markerPointer1.Value       = 80;
            markerPointer1.Color       = Color.Green;
            markerPointer1.Offset      = 0.68;
            markerPointer1.MarkerShape = Com.Syncfusion.Gauges.SfCircularGauge.Enums.MarkerShape.Triangle;
            pointers1.Add(markerPointer1);

            scale1.CircularPointers = pointers1;
            circularScales1.Add(scale1);

            sfCircularGauge1.CircularScales = circularScales1;

            sfCircularGauge1.SetBackgroundColor(Color.White);

            //range pointer

            SfCircularGauge sfCircularGauge2 = new SfCircularGauge(con);

            ObservableCollection <Header> headers2 = new ObservableCollection <Header>();
            Header header2 = new Header();

            header2.Text      = "Range Pointer";
            header2.TextSize  = 18;
            header2.TextColor = Color.Black;
            header2.Position  = new PointF((float)0.5, (float)0.6);
            headers2.Add(header2);
            sfCircularGauge2.Headers = headers2;

            ObservableCollection <CircularScale> circularScales2 = new ObservableCollection <CircularScale>();
            CircularScale scale2 = new CircularScale();

            scale2.StartAngle            = 180;
            scale2.SweepAngle            = 180;
            scale2.StartValue            = 0;
            scale2.EndValue              = 100;
            scale2.RadiusFactor          = 0.7;
            scale2.RimColor              = Color.Gray;
            scale2.Interval              = 50;
            scale2.ShowLabels            = false;
            scale2.ShowTicks             = false;
            scale2.RimWidth              = 3;
            scale2.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers2 = new ObservableCollection <CircularPointer>();
            RangePointer rangePointer = new RangePointer();

            rangePointer.Value           = 60;
            rangePointer.Color           = Color.ParseColor("#FF2680");
            rangePointer.Offset          = 0.6;
            rangePointer.Width           = 20;
            rangePointer.EnableAnimation = false;
            pointers2.Add(rangePointer);

            scale2.CircularPointers = pointers2;
            circularScales2.Add(scale2);

            sfCircularGauge2.CircularScales = circularScales2;

            sfCircularGauge2.SetBackgroundColor(Color.White);

            //needlepointer

            SfCircularGauge sfCircularGauge3 = new SfCircularGauge(con);

            ObservableCollection <Header> headers3 = new ObservableCollection <Header>();
            Header header3 = new Header();

            header3.Text      = "Needle Pointer";
            header3.TextSize  = 18;
            header3.TextColor = Color.Black;
            header3.Position  = new PointF((float)0.5, (float)0.6);
            headers3.Add(header3);
            sfCircularGauge3.Headers = headers3;

            ObservableCollection <CircularScale> circularScales3 = new ObservableCollection <CircularScale>();
            CircularScale scale3 = new CircularScale();

            scale3.StartAngle            = 180;
            scale3.SweepAngle            = 180;
            scale3.StartValue            = 0;
            scale3.EndValue              = 100;
            scale3.RadiusFactor          = 0.7;
            scale3.RimColor              = Color.Gray;
            scale3.Interval              = 50;
            scale3.ShowLabels            = false;
            scale3.ShowTicks             = false;
            scale3.RimWidth              = 3;
            scale3.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers3 = new ObservableCollection <CircularPointer>();
            NeedlePointer needlePointer = new NeedlePointer();

            needlePointer.Value        = 80;
            needlePointer.Color        = Color.Purple;
            needlePointer.LengthFactor = 0.7;
            needlePointer.KnobRadius   = 0;
            needlePointer.Width        = 10;
            needlePointer.Type         = NeedleType.Triangle;
            pointers3.Add(needlePointer);

            scale3.CircularPointers = pointers3;
            circularScales3.Add(scale3);

            sfCircularGauge3.CircularScales = circularScales3;

            sfCircularGauge3.SetBackgroundColor(Color.White);

            SfCircularGauge sfCircularGauge4 = new SfCircularGauge(con);

            ObservableCollection <Header> headers4 = new ObservableCollection <Header>();
            Header header4 = new Header();

            header4.Text      = "Multiple Needle";
            header4.TextSize  = 18;
            header4.TextColor = Color.Black;
            header4.Position  = new PointF((float)0.5, (float)0.7);
            headers4.Add(header4);
            sfCircularGauge4.Headers = headers4;

            ObservableCollection <CircularScale> circularScales4 = new ObservableCollection <CircularScale>();
            CircularScale scale4 = new CircularScale();

            scale4.StartAngle            = 180;
            scale4.SweepAngle            = 180;
            scale4.StartValue            = 0;
            scale4.EndValue              = 100;
            scale4.RadiusFactor          = 0.7;
            scale4.RimColor              = Color.Gray;
            scale4.Interval              = 50;
            scale4.ShowLabels            = false;
            scale4.ShowTicks             = false;
            scale4.RimWidth              = 3;
            scale4.MinorTicksPerInterval = 0;

            ObservableCollection <CircularPointer> pointers4 = new ObservableCollection <CircularPointer>();
            NeedlePointer needlePointer1 = new NeedlePointer();

            needlePointer1.Value            = 40;
            needlePointer1.Color            = Color.ParseColor("#ed7d31");
            needlePointer1.LengthFactor     = 0.5;
            needlePointer1.KnobRadiusFactor = 0.05;
            needlePointer1.KnobColor        = Color.White;
            needlePointer1.Width            = 10;
            needlePointer1.Type             = NeedleType.Triangle;
            needlePointer1.TailStrokeColor  = Color.ParseColor("#ed7d31");
            needlePointer1.KnobStrokeWidth  = 2;
            needlePointer1.KnobStrokeColor  = Color.ParseColor("#ed7d31");
            pointers4.Add(needlePointer1);

            NeedlePointer needlePointer2 = new NeedlePointer();

            needlePointer2.Value            = 70;
            needlePointer2.Color            = Color.ParseColor("#ed7d31");
            needlePointer2.LengthFactor     = 0.6;
            needlePointer2.KnobRadiusFactor = 0.05;
            needlePointer2.KnobColor        = Color.White;
            needlePointer2.Width            = 10;
            needlePointer2.Type             = NeedleType.Triangle;
            needlePointer2.TailStrokeColor  = Color.ParseColor("#ed7d31");
            needlePointer2.KnobStrokeWidth  = 2;
            needlePointer2.KnobStrokeColor  = Color.ParseColor("#ed7d31");
            pointers4.Add(needlePointer2);

            scale4.CircularPointers = pointers4;
            circularScales4.Add(scale4);

            sfCircularGauge4.CircularScales = circularScales4;

            sfCircularGauge4.SetBackgroundColor(Color.White);

            LinearLayout linearLayout = new LinearLayout(con);

            linearLayout.Orientation      = Orientation.Vertical;
            linearLayout.LayoutParameters = new LayoutParams(LayoutParams.MatchParent, LayoutParams.MatchParent);
            linearLayout.AddView(sfCircularGauge, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density));
            linearLayout.AddView(sfCircularGauge1, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density));
            linearLayout.AddView(sfCircularGauge2, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density));
            linearLayout.AddView(sfCircularGauge3, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density));
            linearLayout.AddView(sfCircularGauge4, LayoutParams.WrapContent, (int)(250 * con.Resources.DisplayMetrics.Density));

            linearLayout.SetPadding(30, 30, 30, 30);
            ScrollView mainView = new ScrollView(con);

            mainView.AddView(linearLayout);
            return(mainView);
        }
示例#20
0
        SfCircularGauge getCircularGauge()
        {
            if (this.ContentView == null)
            {
                circularGauge = new SfCircularGauge();
                ObservableCollection <Scale> scales = new ObservableCollection <Scale>();
                circularGauge.VerticalOptions = LayoutOptions.CenterAndExpand;
                //Scales
                scale                       = new Scale();
                scale.StartValue            = 0;
                scale.EndValue              = 100;
                scale.Interval              = 10;
                scale.StartAngle            = 135;
                scale.SweepAngle            = 270;
                scale.RimThickness          = 20;
                scale.RimColor              = Color.FromHex("#d14646");
                scale.LabelColor            = Color.Gray;
                scale.LabelOffset           = 0.1;
                scale.MinorTicksPerInterval = 0;
                List <Pointer> pointers = new List <Pointer>();

                needlePointer              = new NeedlePointer();
                needlePointer.Value        = 60;
                needlePointer.Color        = Color.Gray;
                needlePointer.KnobRadius   = 20;
                needlePointer.KnobColor    = Color.FromHex("#2bbfb8");
                needlePointer.Thickness    = 5;
                needlePointer.LengthFactor = 0.8;
                needlePointer.Type         = PointerType.Bar;

                rangePointer           = new RangePointer();
                rangePointer.Value     = 60;
                rangePointer.Color     = Color.FromHex("#2bbfb8");
                rangePointer.Thickness = 20;
                pointers.Add(needlePointer);
                pointers.Add(rangePointer);

                TickSettings minor = new TickSettings();
                minor.Length            = 4;
                minor.Color             = Color.FromHex("#444444");
                minor.Thickness         = 3;
                scale.MinorTickSettings = minor;

                major                   = new TickSettings();
                major.Length            = 12;
                major.Color             = Color.FromHex("#444444");
                major.Thickness         = 3;
                major.Offset            = Device.OnPlatform(0.05, 0.1, 0.3);
                scale.MajorTickSettings = major;
                scale.Pointers          = pointers;
                scales.Add(scale);
                circularGauge.Scales = scales;

                Header header = new Header();
                header.Text            = "Speedmeter";
                header.TextSize        = 20;
                header.Position        = Device.OnPlatform(iOS: new Point(.3, .7), Android: new Point(0.38, 0.7), WinPhone: new Point(0.38, 0.7));
                header.ForegroundColor = Color.Gray;
                circularGauge.Headers.Add(header);
            }
            return(circularGauge);
        }