Ejemplo n.º 1
0
        /// <summary>
        /// Change the visual style of the controls, depending on the settings.
        /// </summary>
        internal void ChangeVisualStyle()
        {
            _logController.AddLog(new ApplicationLog("Changing MainWindow theme style"));

            GuiManager.ChangeStyle(this);

            try
            {
                SolidColorBrush brush = new SolidColorBrush(Properties.Settings.Default.MetroColor);

                CircularRange rangeNormal  = CgRamUsage.Scales[0].Ranges[0];
                CircularRange rangeWarning = CgRamUsage.Scales[0].Ranges[1];

                rangeNormal.Stroke     = brush;
                rangeNormal.StartValue = 0;
                rangeNormal.EndValue   = Properties.Settings.Default.WarningLevel;

                rangeWarning.StartValue = Properties.Settings.Default.WarningLevel;
                rangeWarning.EndValue   = 100;

                CgRamUsage.Scales[0].Pointers[0].NeedlePointerStroke = brush;
                CgRamUsage.Scales[0].Pointers[0].PointerCapStroke    = brush;
            }
            catch (Exception ex)
            {
                _logController.AddLog(new ErrorLog(ex.Message));
                MessageBox.Show(ex.Message, "MemPlus", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            _logController.AddLog(new ApplicationLog("Done changing MainWindow theme style"));
        }
Ejemplo n.º 2
0
    private void setDashBoard1(DataSet iDsSet)
    {
        int intRow = iDsSet.Tables[0].Rows.Count;

        if (intRow > 0)
        {
            txtBrd1_1.Text = double.Parse(iDsSet.Tables[0].Rows[0][0].ToString()).ToString("#,##0");
            txtBrd1_2.Text = double.Parse(iDsSet.Tables[0].Rows[0][1].ToString()).ToString("#,##0");
            txtBrd1_3.Text = double.Parse(iDsSet.Tables[0].Rows[0][2].ToString()).ToString("#,##0");
            txtBrd1_4.Text = double.Parse(iDsSet.Tables[0].Rows[0][3].ToString()).ToString("#,##0.#0");
            txtBrd1_5.Text = double.Parse(iDsSet.Tables[0].Rows[0][4].ToString()).ToString("#,##0.#0");
            //GaugeContainer1.CircularGauges["Default"].Scales[0].Maximum = double.Parse(iDsSet.Tables[0].Rows[0][3].ToString()).ToString();

            GaugeContainer1.CircularGauges["Default"].Ranges.Add("MaxRange");
            CircularRange range = GaugeContainer1.CircularGauges["Default"].Ranges["MaxRange"];
            range.FillColor            = Color.Lime;
            range.FillGradientEndColor = Color.Red;
            range.FillGradientType     = RangeGradientType.StartToEnd;

            // Set range border attributes
            range.BorderColor = Color.Black;
            range.BorderWidth = 0;

            // Set range start and end values
            range.StartValue = double.Parse(iDsSet.Tables[0].Rows[0][3].ToString()) - 20;
            range.EndValue   = double.Parse(iDsSet.Tables[0].Rows[0][3].ToString());

            // Set range width
            range.StartWidth = 4;
            range.EndWidth   = 8;

            GaugeContainer1.CircularGauges["Default"].Pointers["Default"].Value = Convert.ToDouble(iDsSet.Tables[0].Rows[0][3].ToString());
        }
        else
        {
            txtBrd1_1.Text = "0";
            txtBrd1_2.Text = "0";
            txtBrd1_3.Text = "0";
            txtBrd1_4.Text = "0";
            txtBrd1_5.Text = "0";
        }
        return;
    }
Ejemplo n.º 3
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);
        }
        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);
        }
Ejemplo n.º 5
0
        private bool bInitThermometer()
        {
            bool bRes = false;

            Debug.WriteLine("++Form1::bInitThermometer()");
// digital thermometer; format -xx.x deg C
            NumericalFrame nfrm7Seg4tIndFrame = new NumericalFrame(new Rectangle(10, 10, 140, 60));

            this.DigitalTempBaseUI.Frame.Add(nfrm7Seg4tIndFrame); // DigitalTempBaseUI.Frame[0] - 7-segment indicator
            nfrm7Seg4tIndFrame.BackRenderer.CenterColor      = Color.Black;
            nfrm7Seg4tIndFrame.BackRenderer.FillGradientType = NextUI.Renderer.RendererGradient.GradientType.Solid;

            for (int i = 0; i < m_ciNumOfTemperDigits; i++)
            {
                DigitalPanel7Segment seg = new DigitalPanel7Segment(nfrm7Seg4tIndFrame);
                nfrm7Seg4tIndFrame.Indicator.Panels.Add(seg);
                seg.BackColor    = Color.Black;
                seg.MainColor    = Color.GreenYellow; // blue when below freezing, orange-yellow when above freezing
                seg.EnableBorder = false;
            }
            ;

// construct analog temperature gauge, -20C to +60C, no arrow, rotating sector with gradient color instead
// ------------------------------------------------------------------------------------------------------------------------------
            CircularFrame leftdownframe = new CircularFrame(new Point(10, 20), 200);

            this.AnalogTempBaseUI.Frame.Add(leftdownframe);
            leftdownframe.BackRenderer.CenterColor = Color.Chocolate;
            leftdownframe.BackRenderer.EndColor    = Color.CornflowerBlue;
            leftdownframe.FrameRenderer.Outline    = NextUI.Renderer.FrameRender.FrameOutline.None;
            leftdownframe.Type = CircularFrame.FrameType.HalfCircle1;
// circilar scale bar
            CircularScaleBar leftdownbar = new CircularScaleBar(leftdownframe);

            leftdownbar.FillGradientType    = NextUI.Renderer.RendererGradient.GradientType.Solid;
            leftdownbar.ScaleBarSize        = 2;
            leftdownbar.TickMajor.FillColor = Color.White;
            leftdownbar.TickMinor.FillColor = Color.Cornsilk;
            leftdownbar.StartValue          = -20.0F; // deg C
            leftdownbar.EndValue            = +60.0F; // deg C
            leftdownbar.MajorTickNumber     = 9;
            leftdownbar.SweepAngle          = 180;    // 180; //
            leftdownbar.StartAngle          = 0;
// if custom label is not supplied, then auto generated values will be used
            leftdownbar.CustomLabel               = new string[] { "-20°", "-10°", "±0°", " ", "+20°", " ", "+40°", " ", "+60°" };
            leftdownbar.TickLabel.TextDirection   = CircularLabel.Direction.Horizontal; // will place words cold and hot horizontally
            leftdownbar.TickLabel.OffsetFromScale = 32;                                 // how far away labels are positioned from scale
            leftdownbar.TickLabel.LabelFont       = new Font(FontFamily.GenericMonospace, 10, FontStyle.Bold);
            leftdownbar.TickLabel.FontColor       = Color.White;
            leftdownframe.ScaleCollection.Add(leftdownbar);
// circular range
            CircularRange leftdownrange = new CircularRange(leftdownframe);

            leftdownrange.RangePosition = RangeBase.Position.Inner;
            leftdownrange.StartWidth    = 15;
            leftdownrange.EndWidth      = 15;
            leftdownrange.StartValue    = -20.0F;
            leftdownrange.EndValue      = 0.0F;
            leftdownrange.FillColor     = Color.Red;
            leftdownrange.EndColor      = Color.LightSkyBlue;
            leftdownrange.EnableBorder  = true;
            leftdownrange.BorderColor   = Color.White;
            leftdownrange.Opaque        = 255;
            leftdownbar.Range.Add(leftdownrange);
// construct big °C label
            System.Reflection.Assembly myAssembly = System.Reflection.Assembly.GetExecutingAssembly();
            Stream     tlabel_bmp_Stream          = myAssembly.GetManifestResourceStream("batt_mon_app.degC.png");
            Bitmap     t_label_image = new Bitmap(tlabel_bmp_Stream);
            Point      ptVlablePoint = new Point(leftdownframe.Rect.Width / 2 - t_label_image.Width / 2, (3 * leftdownframe.Rect.Height) / 4 - 2 * t_label_image.Height);
            FrameLabel fbimage       = new FrameLabel(ptVlablePoint, leftdownframe);

            fbimage.BackGrdImage = t_label_image;
// add label to frame
            leftdownframe.FrameLabelCollection.Add(fbimage);

            Debug.WriteLine("--Form1::bInitThermometer()=" + bRes.ToString());
            return(bRes);
        }
        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;
        }
Ejemplo n.º 7
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);
        }
        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);
        }