Xuni User Guide > Xuni Controls > Gauge > Quick Start: Add and Configure > RadialGauge Quick Start |
This section describes how to add a RadialGauge control to your portable or shared app and set its value. For information on how to add Xuni components in C# or XAML, see Adding Xuni Components using C# or Adding Xuni Components using XAML.
This topic comprises of two steps:
The following image shows how the RadialGauge appears, after completing the steps above:
The Value
property denotes the value of the Gauge. Multiple ranges can be added to a single Gauge and the position of the range is defined by the Min
and Max
properties of the range. If you set the Gauge's IsReadOnly
property to false, then the user is be able to edit the value by tapping on the Gauge.
The StartAngle
property specifies the RadialGauge's starting angle and the SweepAngle
property specifies an angle representing the length of the RadialGauge's arc. These properties can be used to specify the start and end points of the radial gauge arc. The angle for both properties are measured clockwise, starting at the 9 o'clock position. When the SweepAngle
is negative is formed counter clockwise.
RadialGauge also offers an AutoScale
property. When this property is set to true, the RadialGauge is automatically scaled to fill its containing element.
Note: XuniRadialGauge.Origin property can be used to change the origin of the RadialGauge pointer. By default, the Origin is set to 0. |
Complete the following steps to initialize a RadialGauge control in C# or XAML.
QuickStart.cs
) to your Portable or Shared project and include Xuni Gauge and Xamarin references as shown below.
C# |
Copy Code |
---|---|
using Xuni.Xamarin.Gauge; using Xamarin.Forms; |
GetRadialGauge()
(or GetRadialGauge()
/ GetBulletGraph()
).
C# |
Copy Code |
---|---|
public static XuniRadialGauge GetRadialGauge() { //Instantiate RadialGauge and set its properties XuniRadialGauge gauge = new XuniRadialGauge(); gauge.Value = 35; gauge.Min = 0; gauge.Max = 100; gauge.StartAngle = -20; gauge.SweepAngle = 220; gauge.AutoScale = true; gauge.ShowText = GaugeShowText.None; gauge.PointerColor = Color.Blue; //Create Ranges GaugeRange low = new GaugeRange(); GaugeRange med = new GaugeRange(); GaugeRange high = new GaugeRange(); //Customize Ranges low.Color = Color.Red; low.Min = 0; low.Max = 40; med.Color = Color.Yellow; med.Min = 40; med.Max = 80; high.Color = Color.Green; high.Min = 80; high.Max = 100; //Add Ranges to RadialGauge gauge.Ranges.Add(low); gauge.Ranges.Add(med); gauge.Ranges.Add(high); return gauge; } |
QuickStart.xaml
) to your Portable or Shared project and modify the <ContentPage>
tag to include Xuni reference as shown below:
XAML |
Copy Code |
---|---|
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="Appl.QuickStart" xmlns:xuni="clr-namespace:Xuni.Xamarin.Gauge;assembly=Xuni.Xamarin.Gauge"> |
<ContentPage></ContentPage>
tags and inside the <StackLayout></StackLayout>
tags as shown below:
XAML |
Copy Code |
---|---|
<StackLayout> <xuni:XuniRadialGauge Value="35" Min="0" Max="100" HeightRequest="100" WidthRequest="50" ShowText="None" StartAngle = "-20" SweepAngle = "220" AutoScale = "true" PointerColor="Blue"> <xuni:XuniRadialGauge.Ranges> <xuni:GaugeRange Min="0" Max="40" Color="Red"/> <xuni:GaugeRange Min="40" Max="80" Color="Yellow"/> <xuni:GaugeRange Min="80" Max="100" Color="Green"/> </xuni:XuniRadialGauge.Ranges> </xuni:XuniRadialGauge> </StackLayout> |
App.cs
to open it.
App()
, set a new ContentPage
as the MainPage
and assign the control to the ContentPage
's Content
by invoking the method GetRadialGauge()
defined in the previous procedure, Step 1: Add a RadialGauge Control.
The following code shows the class constructor App()
after completing steps above.
C# |
Copy Code |
---|---|
public App() { // The root page of your application MainPage = new ContentPage { Content = QuickStart.GetRadialGauge() }; } |
App()
, set the Forms XAML Page QuickStart
as the MainPage
.
The following code shows the class constructor App()
, after completing this step.
C# |
Copy Code |
---|---|
public App() { // The root page of your application MainPage = new QuickStart(); } |
AppDelegate.cs
inside YourAppName.iOS project, to open it.
FinishedLaunching()
method.
C# |
Copy Code |
---|---|
Xuni.Xamarin.Gauge.Platform.iOS.Forms.Init(); |
MainPage.xml
.
MainPage.xml.cs
to open it.
C# |
Copy Code |
---|---|
Xuni.Xamarin.Gauge.Platform.WinPhone.GaugeRenderer.Init(); |