public override void OnInitializeEditElement(DataColumnBase dataColumn, SfNumericTextBox uiElement, object dataContext)
 {
     base.OnInitializeEditElement(dataColumn, uiElement, dataContext);
     uiElement.ValueChanged         += UiElement_ValueChanged;
     this.RowColumnIndex.ColumnIndex = dataColumn.ColumnIndex;
     this.RowColumnIndex.RowIndex    = dataColumn.RowIndex;
 }
        // Passes selected owned asset to know what details to display
        public OwnedAssetDetailsPage(OwnedAsset ownedAsset)
        {
            OwnedAsset = ownedAsset;
            OwnedAsset.UpdateOwnedAsset();
            BindingContext = this;
            InitializeComponent();

            editPrincipalValue = new SfNumericTextBox {
                Value = 0
            };
            editPrincipalValue.ValueChanged += Handle_PrincipalValueChanged;

            editInterestRate = new SfNumericTextBox {
                Value = 0
            };
            editInterestRate.ValueChanged += Handle_InterestRateChanged;

            editLength = new SfNumericTextBox {
                Value = 0
            };
            editLength.ValueChanged += Handle_LengthChanged;

            editRegPayments = new SfNumericTextBox {
                Value = 0
            };
            editRegPayments.ValueChanged += Handle_RegularPaymentsChanged;

            editReturnGoal = new SfNumericTextBox {
                Value = 0
            };
            editReturnGoal.ValueChanged += Handle_ReturnGoalChanged;
        }
Пример #3
0
        public SettingsPage()
        {
            InitializeComponent();
            Themes.DataSource = Enum.GetValues(typeof(Theme)).ToList <Enum>();

            editPortfolioReturnGoal = new SfNumericTextBox {
                Value = 0
            };
            editPortfolioReturnGoal.ValueChanged += Handle_PortfolioGoalChanged;
        }
Пример #4
0
 public static int ValueInt(this SfNumericTextBox control)
 {
     if (control.Value is string s)
     {
         if (int.TryParse(s, out int si))
         {
             return(si);
         }
         if (decimal.TryParse(s, out decimal sc))
         {
             return((int)sc);
         }
         else
         {
             return(default(int));
         }
     }
     if (control.Value is int i)
     {
         return(i);
     }
     if (control.Value is decimal c)
     {
         return((int)c);
     }
     if (control.Value is double d)
     {
         return((int)d);
     }
     if (control.Value is float f)
     {
         return((int)f);
     }
     if (control.Value is null)
     {
         return(default(int));
     }
     else
     {
         throw new Exception("Unknown value type");
     }
 }
        public OwnedStockDetailsPage(OwnedStock ownedStock)
        {
            OwnedStock = ownedStock;
            OwnedStock.UpdateOwnedAsset();
            BindingContext = this;
            InitializeComponent();

            editNumOfShares = new SfNumericTextBox {
                Value = 0
            };
            editNumOfShares.ValueChanged += Handle_NumSharesChanged;

            editPurchasePrice = new SfNumericTextBox {
                Value = 0
            };
            editPurchasePrice.ValueChanged += Handle_PriceChanged;

            editReturnGoal = new SfNumericTextBox {
                Value = 0
            };
            editReturnGoal.ValueChanged += Handle_ReturnGoalChanged;
        }
Пример #6
0
 public static float ValueFloat(this SfNumericTextBox control)
 {
     if (control.Value is string s)
     {
         if (float.TryParse(s, out float sf))
         {
             return(sf);
         }
         else
         {
             return(default(float));
         }
     }
     if (control.Value is decimal c)
     {
         return((float)c);
     }
     if (control.Value is double d)
     {
         return((float)d);
     }
     if (control.Value is float f)
     {
         return(f);
     }
     if (control.Value is int i)
     {
         return(i);
     }
     if (control.Value is null)
     {
         return(default(float));
     }
     else
     {
         throw new Exception("Unknown value type");
     }
 }
Пример #7
0
        public View GetSampleContent(Context con)
        {
            SamplePageContent(con);
            FrameLayout mainFrameLayout = new FrameLayout(con);

            FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent, GravityFlags.FillVertical);
            mainFrameLayout.LayoutParameters = layoutParams;

            //PrincipalAmountNumericTextBox
            principalAmountNumericTextBox = new SfNumericTextBox(con);
            principalAmountNumericTextBox.FormatString               = "C";
            principalAmountNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            principalAmountNumericTextBox.Value                      = 1000;
            principalAmountNumericTextBox.AllowNull                  = true;
            principalAmountNumericTextBox.Watermark                  = "Principal Amount";
            principalAmountNumericTextBox.MaximumNumberDecimalDigits = 2;
            var culture = new Java.Util.Locale("en", "US");

            principalAmountNumericTextBox.CultureInfo     = culture;
            principalAmountNumericTextBox.ValueChangeMode = ValueChangeMode.OnKeyFocus;

            //InterestNumericTextBox
            interestNumericTextBox = new SfNumericTextBox(con);
            interestNumericTextBox.FormatString               = "P";
            interestNumericTextBox.Value                      = 0.1;
            interestNumericTextBox.PercentDisplayMode         = PercentDisplayMode.Compute;
            interestNumericTextBox.MaximumNumberDecimalDigits = 2;
            interestNumericTextBox.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            interestNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            interestNumericTextBox.Watermark                  = "Rate of Interest";
            interestNumericTextBox.AllowNull                  = true;
            interestNumericTextBox.CultureInfo                = culture;

            //PeriodValueNumericTextBox
            periodValueNumericTextBox = new SfNumericTextBox(con);
            periodValueNumericTextBox.FormatString = " years";
            periodValueNumericTextBox.Value        = 20;
            periodValueNumericTextBox.MaximumNumberDecimalDigits = 0;
            periodValueNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            periodValueNumericTextBox.Watermark       = "Period (in years)";
            periodValueNumericTextBox.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            periodValueNumericTextBox.CultureInfo     = culture;
            periodValueNumericTextBox.AllowNull       = true;

            //OutputNumberTextBox
            outputNumberTextBox = new SfNumericTextBox(con);
            outputNumberTextBox.FormatString = "c";
            outputNumberTextBox.MaximumNumberDecimalDigits = 0;
            outputNumberTextBox.AllowNull        = true;
            outputNumberTextBox.CultureInfo      = culture;
            outputNumberTextBox.Watermark        = "Enter Values";
            outputNumberTextBox.Clickable        = false;
            outputNumberTextBox.Value            = (float)(1000 * 0.1 * 20);
            outputNumberTextBox.Enabled          = false;
            outputNumberTextBox.LayoutParameters = new ViewGroup.LayoutParams(width / 2, numerHeight);
            outputNumberTextBox.ValueChangeMode  = ValueChangeMode.OnLostFocus;

            //Numerictextbox Value Changed Listener
            principalAmountNumericTextBox.ValueChanged += (object sender, ValueChangedEventArgs e) => {
                if (e.Value != null && periodValueNumericTextBox.Value != null && interestNumericTextBox.Value != null)
                {
                    outputNumberTextBox.Value = Double.Parse(e.Value.ToString()) * Double.Parse(periodValueNumericTextBox.Value.ToString()) * Double.Parse(interestNumericTextBox.Value.ToString());
                }
            };
            periodValueNumericTextBox.ValueChanged += (object sender, ValueChangedEventArgs e) => {
                if (e.Value != null && principalAmountNumericTextBox.Value != null && interestNumericTextBox.Value != null)
                {
                    outputNumberTextBox.Value = Double.Parse(e.Value.ToString()) * Double.Parse(principalAmountNumericTextBox.Value.ToString()) * Double.Parse(interestNumericTextBox.Value.ToString());
                }
            };
            interestNumericTextBox.ValueChanged += (object sender, ValueChangedEventArgs e) => {
                if (e.Value != null && principalAmountNumericTextBox.Value != null && periodValueNumericTextBox.Value != null)
                {
                    outputNumberTextBox.Value = Double.Parse(e.Value.ToString()) * Double.Parse(principalAmountNumericTextBox.Value.ToString()) * Double.Parse(periodValueNumericTextBox.Value.ToString());
                }
            };

            mainFrameLayout.AddView(GetView(con));
            ScrollView mainScrollView = new ScrollView(con);

            mainScrollView.AddView(mainFrameLayout);

            return(mainScrollView);
        }
Пример #8
0
        public override View GetSampleContent(Context con1)
        {
            context = con = con1;
            InitialMethod();
            HeaderLabel();

            // principalAmountNumericTextBox
            LinearLayout principalStack = new LinearLayout(con);
            TextView     principalLabel = new TextView(con);

            principalLabel.LayoutParameters                          = new ViewGroup.LayoutParams(width / 2, numerHeight);
            principalLabel.Text                                      = "Principal";
            principalLabel.TextSize                                  = 20;
            principalAmountNumericTextBox                            = new SfNumericTextBox(con);
            principalAmountNumericTextBox.FormatString               = "C";
            principalAmountNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            principalAmountNumericTextBox.Value                      = 1000;
            principalAmountNumericTextBox.AllowNull                  = true;
            principalAmountNumericTextBox.Watermark                  = "Principal Amount";
            principalAmountNumericTextBox.MaximumNumberDecimalDigits = 2;
            principalAmountNumericTextBox.FocusChange               += PrincipalAmountNumericTextBox_FocusChange;
            var culture = new Java.Util.Locale("en", "US");

            principalAmountNumericTextBox.CultureInfo     = culture;
            principalAmountNumericTextBox.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            principalStack.Orientation = Orientation.Horizontal;
            principalStack.AddView(principalLabel);
            principalStack.AddView(principalAmountNumericTextBox);
            mainLayout.AddView(principalStack);
            TextView principalStackSpacing = new TextView(con);

            mainLayout.AddView(principalStackSpacing);

            //interestNumericTextBox
            LinearLayout InterestcalStack = new LinearLayout(con);
            TextView     interestLabel    = new TextView(con);

            interestLabel.LayoutParameters                    = new ViewGroup.LayoutParams(width / 2, numerHeight);
            interestLabel.Text                                = "Interest Rate";
            interestLabel.TextSize                            = 20;
            interestNumericTextBox                            = new SfNumericTextBox(con);
            interestNumericTextBox.FormatString               = "P";
            interestNumericTextBox.Value                      = 0.1;
            interestNumericTextBox.PercentDisplayMode         = PercentDisplayMode.Compute;
            interestNumericTextBox.MaximumNumberDecimalDigits = 2;
            interestNumericTextBox.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            interestNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            interestNumericTextBox.Watermark                  = "Rate of Interest";
            interestNumericTextBox.AllowNull                  = true;
            interestNumericTextBox.CultureInfo                = culture;
            interestNumericTextBox.FocusChange               += InterestNumericTextBox_FocusChange;
            InterestcalStack.Orientation                      = Orientation.Horizontal;
            InterestcalStack.AddView(interestLabel);
            InterestcalStack.AddView(interestNumericTextBox);
            mainLayout.AddView(InterestcalStack);
            TextView InterestcalStackSpacing = new TextView(con);

            mainLayout.AddView(InterestcalStackSpacing);

            //periodValueNumericTextBox
            LinearLayout periodStack = new LinearLayout(con);
            TextView     period      = new TextView(con);

            period.LayoutParameters   = new ViewGroup.LayoutParams(width / 2, numerHeight);
            period.Text               = "Term";
            period.TextSize           = 20;
            periodValueNumericTextBox = new SfNumericTextBox(con);
            periodValueNumericTextBox.FormatString = " years";
            periodValueNumericTextBox.Value        = 20;
            periodValueNumericTextBox.MaximumNumberDecimalDigits = 0;
            periodValueNumericTextBox.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, numerHeight);
            periodValueNumericTextBox.Watermark       = "Period (in years)";
            periodValueNumericTextBox.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            periodValueNumericTextBox.CultureInfo     = culture;
            periodValueNumericTextBox.AllowNull       = true;
            periodValueNumericTextBox.FocusChange    += PeriodValueNumericTextBox_FocusChange;
            periodStack.Orientation = Orientation.Horizontal;
            periodStack.AddView(period);
            periodStack.AddView(periodValueNumericTextBox);
            mainLayout.AddView(periodStack);

            //outputNumberTextBox
            LinearLayout outputStack = new LinearLayout(con);
            TextView     outputLabel = new TextView(con);

            outputLabel.LayoutParameters = new ViewGroup.LayoutParams(width / 2, numerHeight);
            outputLabel.Text             = "Interest";
            outputLabel.TextSize         = 20;
            outputLabel.SetTextColor(Color.ParseColor("#66BB6A"));
            outputNumberTextBox = new SfNumericTextBox(con);
            outputNumberTextBox.FormatString = "c";
            outputNumberTextBox.MaximumNumberDecimalDigits = 0;
            outputNumberTextBox.AllowNull        = true;
            outputNumberTextBox.CultureInfo      = culture;
            outputNumberTextBox.Watermark        = "Enter Values";
            outputNumberTextBox.Clickable        = false;
            outputNumberTextBox.Value            = (float)(1000 * 0.1 * 20);
            outputNumberTextBox.Enabled          = false;
            outputNumberTextBox.LayoutParameters = new ViewGroup.LayoutParams(width / 2, numerHeight);
            outputNumberTextBox.ValueChangeMode  = ValueChangeMode.OnLostFocus;
            outputStack.Orientation = Orientation.Horizontal;
            outputStack.AddView(outputLabel);
            if (con.Resources.DisplayMetrics.Density > 1.5)
            {
                outputStack.SetY(60);
            }
            outputStack.AddView(outputNumberTextBox);
            mainLayout.AddView(outputStack);
            TextView outputStackSpacing = new TextView(con);

            mainLayout.AddView(outputStackSpacing);

            ValueChangeListener();

            return(frame);
        }
Пример #9
0
        private void ListTemplate()
        {
            AssList.ItemSpacing    = 0;
            AssList.AutoFitMode    = Syncfusion.ListView.XForms.AutoFitMode.DynamicHeight;
            AssList.BindingContext = new Assignments();
            AssList.ItemTemplate   = new DataTemplate(() =>
            {
                Grid MainGrid = new Grid()
                {
                    VerticalOptions = LayoutOptions.StartAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, BackgroundColor = Color.FromRgba(0, 0, 0, 0.5), Margin = new Thickness(0), Padding = 0
                };

                StackLayout main = new StackLayout()
                {
                    Spacing = 5, Margin = 0, Padding = 0, Orientation = StackOrientation.Vertical, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand
                };

                StackLayout firstRow = new StackLayout()
                {
                    Orientation = StackOrientation.Horizontal, Spacing = 0, VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, HeightRequest = 50
                };
                Label l = new Label()
                {
                    TextColor = Color.White, FontSize = 18, WidthRequest = 200, LineBreakMode = Xamarin.Forms.LineBreakMode.TailTruncation, FontAttributes = FontAttributes.Bold, HorizontalOptions = LayoutOptions.StartAndExpand, VerticalOptions = LayoutOptions.Center, VerticalTextAlignment = TextAlignment.Center, Margin = new Thickness(0, 0)
                };
                l.SetBinding(Label.TextProperty, new Binding("Description"));
                firstRow.Children.Add(l);

                StackLayout border = new StackLayout()
                {
                    WidthRequest = 150, HeightRequest = 50, VerticalOptions = LayoutOptions.StartAndExpand, HorizontalOptions = LayoutOptions.End, Margin = new Thickness(0, 0)
                };
                StackLayout score = new StackLayout()
                {
                    Orientation = StackOrientation.Horizontal, WidthRequest = 150, VerticalOptions = LayoutOptions.StartAndExpand, HorizontalOptions = LayoutOptions.CenterAndExpand
                };

                StackLayout holder1 = new StackLayout()
                {
                    VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.Center, WidthRequest = 105, HeightRequest = 40
                };
                var inputLayout1 = new SfTextInputLayout()
                {
                    ContainerType = ContainerType.Outlined, VerticalOptions = LayoutOptions.StartAndExpand, HorizontalOptions = LayoutOptions.Center, HeightRequest = 40, InputViewPadding = 0, ReserveSpaceForAssistiveLabels = false
                };
                SfNumericTextBox points = new SfNumericTextBox()
                {
                    TextAlignment = TextAlignment.Center, VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.FillAndExpand, TextColor = Color.White, HeightRequest = 40, Margin = 0, SelectAllOnFocus = true
                };
                points.SetBinding(SfNumericTextBox.ValueProperty, new Binding("Points", BindingMode.TwoWay));
                inputLayout1.SetBinding(SfTextInputLayout.ContainerBackgroundColorProperty, new Binding("BackColor"));
                points.MaximumNumberDecimalDigits = 1;
                points.Completed      += Handle_ValueChanged;
                points.Minimum         = 0;
                inputLayout1.InputView = points;
                holder1.Children.Add(inputLayout1);

                StackLayout holder2 = new StackLayout()
                {
                    VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.Center, WidthRequest = 105, HeightRequest = 40
                };
                var inputLayout2 = new SfTextInputLayout()
                {
                    ContainerType = ContainerType.Outlined, VerticalOptions = LayoutOptions.StartAndExpand, HorizontalOptions = LayoutOptions.Center, HeightRequest = 40, InputViewPadding = 0, ReserveSpaceForAssistiveLabels = false
                };
                SfNumericTextBox possible = new SfNumericTextBox()
                {
                    TextAlignment = TextAlignment.Center, VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.FillAndExpand, TextColor = Color.White, HeightRequest = 40, Margin = 0, SelectAllOnFocus = true
                };
                possible.SetBinding(SfNumericTextBox.ValueProperty, new Binding("Possible", BindingMode.TwoWay));
                inputLayout2.SetBinding(SfTextInputLayout.ContainerBackgroundColorProperty, new Binding("BackColor"));
                possible.MaximumNumberDecimalDigits = 1;
                possible.Completed    += Handle_ValueChanged;
                inputLayout2.InputView = possible;
                holder2.Children.Add(inputLayout2);

                score.Children.Add(holder1);
                score.Children.Add(holder2);

                border.Children.Add(score);
                border.BackgroundColor = Color.Transparent;
                firstRow.Children.Add(border);

                StackLayout subMain = new StackLayout()
                {
                    Spacing = 0, Margin = 0, Padding = 0, HorizontalOptions = LayoutOptions.FillAndExpand, Orientation = StackOrientation.Horizontal, VerticalOptions = LayoutOptions.StartAndExpand
                };
                cat = new SfComboBox()
                {
                    HorizontalOptions = LayoutOptions.StartAndExpand, WidthRequest = 200, HeightRequest = 50, TextColor = Color.White, VerticalOptions = LayoutOptions.CenterAndExpand
                };
                cat.ComboBoxSource    = Cats;
                cat.SelectionChanged += ComboBox_SelectionChanged;
                cat.SetBinding(SfComboBox.TextProperty, new Binding("AssignmentType", BindingMode.TwoWay));
                subMain.Children.Add(cat);
                gradeBox = new SfComboBox()
                {
                    HorizontalOptions = LayoutOptions.End, WidthRequest = 150, TextColor = Color.White
                };
                gradeBox.SetBinding(SfComboBox.TextProperty, new Binding("Grade", BindingMode.TwoWay));
                gradeBox.ComboBoxSource    = gradesPoss;
                gradeBox.SelectionChanged += Gradebox_SelectionChanged;
                subMain.Children.Add(gradeBox);

                StackLayout last = new StackLayout()
                {
                    Orientation = StackOrientation.Horizontal, VerticalOptions = LayoutOptions.End, HorizontalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(0, 0)
                };
                Binding dateNTime   = new Binding("Date");
                dateNTime.Converter = new AssignmentDateConverter();
                Label date          = new Label()
                {
                    TextColor = Color.White, VerticalOptions = LayoutOptions.End, FontSize = 15f, FontAttributes = FontAttributes.Bold, Margin = new Thickness(0, 0), HorizontalOptions = LayoutOptions.EndAndExpand
                };
                date.SetBinding(Label.TextProperty, dateNTime);
                last.Children.Add(date);

                main.Children.Add(firstRow);
                main.Children.Add(subMain);
                main.Children.Add(last);
                main.Children.Add(new BoxView()
                {
                    Color = Color.Black, HorizontalOptions = LayoutOptions.FillAndExpand, HeightRequest = 2
                });

                MainGrid.Children.Add(main);
                return(MainGrid);
            });
        }
Пример #10
0
        protected override void OnInitializeEditElement(DataColumnBase column, RowColumnIndex rowColumnIndex, SfNumericTextBox uiElement)
        {
            base.OnInitializeEditElement(column, rowColumnIndex, uiElement);
            uiElement.TextChanged += UiElement_TextChanged;

            this.RowColumnIndex = rowColumnIndex;
        }
		public NumericTextBox ()
		{
            double height = Bounds.Height;
            double width = App.ScreenWidth;
		    if (Device.Idiom == TargetIdiom.Tablet)
		    {
		        width /= 2;
		    }
            
			label1 = new Label() { Text = "Simple Interest Calculator", HeightRequest = 40, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black };
			label2 = new Label() { Text = "The formula for finding simple interest is :", HeightRequest = 45, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black };
			label3 = new Label() { Text = "Interest = Principal * Rate * Time", HeightRequest = 40, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black };
			label4 = new Label() { Text = "Principal", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black };
			label5 = new Label() { Text = "Interest Rate", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black };
			label6 = new Label() { Text = "Term", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black };
			label7 = new Label() { Text = "Interest", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black };
            label11 = new Label() { Text = "  " + "Culture", HeightRequest = 40, WidthRequest = width / 2, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Gray };
			label12 = new Label() { Text = "  " + "AllowNull", HeightRequest = 40, WidthRequest = width / 2, HorizontalOptions = LayoutOptions.Start, VerticalOptions = LayoutOptions.Center, TextColor = Color.Gray };
			label1.FontAttributes = FontAttributes.None;
			label1.FontSize = 22;
			label2.FontAttributes = FontAttributes.None;
			label2.FontSize = 20;
			label3.FontAttributes = FontAttributes.None;
			label3.FontSize = 20;
			label4.FontAttributes = FontAttributes.None;
			label4.FontSize = 18;
			label5.FontAttributes = FontAttributes.None;
			label5.FontSize = 18;
			label6.FontAttributes = FontAttributes.None;
			label6.FontSize = 18;
			label7.FontAttributes = FontAttributes.None;
			label7.FontSize = 18;
			label11.FontAttributes = FontAttributes.None;
			label11.FontSize = 20;
			label12.FontAttributes = FontAttributes.None;
			label12.FontSize = 20;
			label12.YAlign = TextAlignment.Center;
            toggle1 = new Switch();
            toggle1.IsToggled = true;
            toggle1.HorizontalOptions = LayoutOptions.Start;
            toggle1.VerticalOptions = LayoutOptions.Center;
            toggle1.Toggled += (object sender, ToggledEventArgs e) =>
            {
                numericTextBox1.AllowNull = e.Value;
                numericTextBox2.AllowNull = e.Value;
                numericTextBox3.AllowNull = e.Value;
                numericTextBox4.AllowNull = e.Value;
            };
            picker = new PickerExt();
            picker.VerticalOptions = LayoutOptions.Start;
            picker.Items.Add("United States");
            picker.Items.Add("United Kingdom");
            picker.Items.Add("Japan");
            picker.Items.Add("France");
            picker.Items.Add("Italy");
			picker.SelectedIndexChanged+= (object sender, EventArgs e) =>
            {
                switch (picker.SelectedIndex)
                {
                    case 0:
                        {
                            numericTextBox1.Culture = new System.Globalization.CultureInfo("en-US");
                            numericTextBox2.Culture = new System.Globalization.CultureInfo("en-US");
                            numericTextBox4.Culture = new System.Globalization.CultureInfo("en-US");
                            numericTextBox3.Culture = new System.Globalization.CultureInfo("en-US");
                        }
                        break;
                    case 1:
                        {
                            numericTextBox1.Culture = new System.Globalization.CultureInfo("en-GB");
                            numericTextBox2.Culture = new System.Globalization.CultureInfo("en-GB");
                            numericTextBox3.Culture = new System.Globalization.CultureInfo("en-GB");
                            numericTextBox4.Culture = new System.Globalization.CultureInfo("en-GB");
                        }
                        break;
                    case 2:
                        {
                            numericTextBox1.Culture = new System.Globalization.CultureInfo("ja-JP");
                            numericTextBox2.Culture = new System.Globalization.CultureInfo("ja-JP");
                            numericTextBox3.Culture = new System.Globalization.CultureInfo("ja-JP");
                            numericTextBox4.Culture = new System.Globalization.CultureInfo("ja-JP");
                        }
                        break;
                    case 3:
                        {
                            numericTextBox1.Culture = new System.Globalization.CultureInfo("fr-FR");
                            numericTextBox2.Culture = new System.Globalization.CultureInfo("fr-FR");
                            numericTextBox3.Culture = new System.Globalization.CultureInfo("fr-FR");
                            numericTextBox4.Culture = new System.Globalization.CultureInfo("fr-FR");
                        }
                        break;
                    case 4:
                        {
                            numericTextBox1.Culture = new System.Globalization.CultureInfo("it-IT");
                            numericTextBox2.Culture = new System.Globalization.CultureInfo("it-IT");
                            numericTextBox3.Culture = new System.Globalization.CultureInfo("it-IT");
                            numericTextBox4.Culture = new System.Globalization.CultureInfo("it-IT");
                        }
                        break;
                }
            };
            numericTextBox1 = new SfNumericTextBox();
            numericTextBox1.Watermark = "Enter Principal";
            numericTextBox1.AllowNull = true;
            numericTextBox1.MaximumNumberDecimalDigits = 2;
			numericTextBox1.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            numericTextBox1.FormatString = "c";
            numericTextBox1.Value = 1000;
            numericTextBox1.HorizontalOptions = LayoutOptions.End;
            numericTextBox1.VerticalOptions = LayoutOptions.Center;
			numericTextBox1.ValueChanged+= (object sender, ValueEventArgs e) => 
			{
				numericTextBox4.Value = numericTextBox2.Value*e.Value*numericTextBox3.Value;
			};



			numericTextBox1.Culture = new System.Globalization.CultureInfo("en-US");
		
            numericTextBox2 = new SfNumericTextBox();
            numericTextBox2.Watermark = "Enter RI";
            numericTextBox2.AllowNull = true;
            numericTextBox2.MaximumNumberDecimalDigits = 0;
			numericTextBox2.PercentDisplayMode = PercentDisplayMode.Compute;
			numericTextBox2.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            numericTextBox2.FormatString = "p";
            numericTextBox2.Value = 0.1f;
            numericTextBox2.HorizontalOptions = LayoutOptions.End;
            numericTextBox2.VerticalOptions = LayoutOptions.Center;
			numericTextBox2.Culture = new System.Globalization.CultureInfo("en-US");
			numericTextBox2.ValueChanged+= (object sender, ValueEventArgs e) => 
			{
				numericTextBox4.Value = numericTextBox1.Value*e.Value*numericTextBox3.Value;
			};
            numericTextBox3 = new SfNumericTextBox();
            numericTextBox3.Watermark = "Enter Years";
            numericTextBox3.AllowNull = true;
            numericTextBox3.MaximumNumberDecimalDigits = 0;
			numericTextBox3.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            numericTextBox3.FormatString = "years";
            numericTextBox3.Value = 20;
            numericTextBox3.HorizontalOptions = LayoutOptions.End;
            numericTextBox3.VerticalOptions = LayoutOptions.Center;
			numericTextBox3.ValueChanged+= (object sender, ValueEventArgs e) => 
			{
				numericTextBox4.Value = numericTextBox1.Value*numericTextBox2.Value*e.Value;
			};
			numericTextBox3.Culture = new System.Globalization.CultureInfo("en-US");

            numericTextBox4 = new SfNumericTextBox();
            numericTextBox4.Watermark = "Enter a number";
            numericTextBox4.AllowNull = true;
            numericTextBox4.MaximumNumberDecimalDigits = 0;
            numericTextBox4.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            numericTextBox4.HorizontalOptions = LayoutOptions.End;
            numericTextBox4.FormatString = "c";
			numericTextBox4.Value = (float)1000*0.1*20;
            numericTextBox4.VerticalOptions = LayoutOptions.Center;
			numericTextBox4.Culture = new System.Globalization.CultureInfo("en-US");
			numericTextBox4.IsEnabled = false;
			this.BackgroundColor = Color.White;

            if (Device.OS == TargetPlatform.iOS)
            {
				numericTextBox1.WidthRequest = width / 2;
                numericTextBox2.WidthRequest = width / 2;
                numericTextBox3.WidthRequest = width / 2;
                numericTextBox4.WidthRequest = width / 2;
                toggle1.WidthRequest = width / 2;
            }
            else if (Device.OS == TargetPlatform.WinPhone)
            {
                numericTextBox1.WidthRequest = width / 2;
                numericTextBox2.WidthRequest = width / 2;
                numericTextBox3.WidthRequest = width / 2;
                numericTextBox4.WidthRequest = width / 2;
                toggle1.WidthRequest = width / 2;
                toggle1.HorizontalOptions = LayoutOptions.End;
                label1.TextColor = Color.White;
                label2.TextColor = Color.White;
                label3.TextColor = Color.White;
                label4.TextColor = Color.White;
                label5.TextColor = Color.White;
                label6.TextColor = Color.White;
                label7.TextColor = Color.White;
                numericTextBox1.BackgroundColor = Color.White;
                numericTextBox2.BackgroundColor = Color.White;
                numericTextBox3.BackgroundColor = Color.White;
                numericTextBox4.BackgroundColor = Color.White;
                numericTextBox2.FormatString = "0 %";
                numericTextBox3.FormatString = "0 years";
                this.BackgroundColor = Color.Black;
            }
            else
            {
                
                numericTextBox1.WidthRequest = width / 3;
                numericTextBox2.WidthRequest = width / 3;
                numericTextBox3.WidthRequest = width / 3;
                numericTextBox4.WidthRequest = width / 3;
            }
		    if (Device.OS == TargetPlatform.Windows)
		    {
                label1.TextColor = Color.Gray;
                label2.TextColor = Color.Gray;
                label3.TextColor = Color.Gray;
                label4.TextColor = Color.Gray;
                label5.TextColor = Color.Gray;
                label6.TextColor = Color.Gray;
                label7.TextColor = Color.Gray;
                numericTextBox1.BackgroundColor = Color.White;
                numericTextBox2.BackgroundColor = Color.White;
                numericTextBox3.BackgroundColor = Color.White;
                numericTextBox4.BackgroundColor = Color.White;
                this.BackgroundColor = Color.Black;
                numericTextBox2.FormatString = "0 %";
                numericTextBox3.FormatString = "0 years";
		        if (Device.Idiom != TargetIdiom.Tablet)
		        {
		            numericTextBox4.IsEnabled = true;
		        }
		    }
		    this.ContentView = GetNumeric();
            PropertyView = GetOptionPage();
        }
        //Java.Lang.Object.Locale localinfo;
        public override View GetSampleContent(Context con)
        {
            Context     localcontext = con;
            int         width        = con.Resources.DisplayMetrics.WidthPixels - 40;
            FrameLayout frameLayout  = new FrameLayout(con);

            FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent, GravityFlags.FillVertical);
            frameLayout.LayoutParameters = layoutParams;
            LinearLayout layout = new LinearLayout(con);

            layout.LayoutParameters = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent);
            layout.SetGravity(GravityFlags.FillVertical);
            layout.Orientation = Orientation.Vertical;
            TextView dummy0 = new TextView(con);

            dummy0.Text     = "Simple Interest Calculator";
            dummy0.Gravity  = GravityFlags.Center;
            dummy0.TextSize = 24;
            layout.AddView(dummy0);
            TextView dummy7 = new TextView(con);

            layout.AddView(dummy7);
            TextView dummy = new TextView(con);

            dummy.Text     = "The formula for finding simple interest is:";
            dummy.TextSize = 18;
            layout.AddView(dummy);


            layout.FocusableInTouchMode = true;
            SpannableStringBuilder builder = new SpannableStringBuilder();
            TextView        dummy1         = new TextView(con);
            String          str            = "Interest";
            SpannableString strSpannable   = new SpannableString(str);

            strSpannable.SetSpan(new ForegroundColorSpan(Color.ParseColor("#66BB6A")), 0, str.Length, 0);
            builder.Append(strSpannable);
            builder.Append(" = Principal * Rate * Time");
            dummy1.SetText(builder, TextView.BufferType.Spannable);
            dummy1.TextSize = 18;
            layout.AddView(dummy1);

            TextView dummy8 = new TextView(con);

            layout.AddView(dummy8);

            /*
             * Principal amount Stack
             */

            LinearLayout principalStack = new LinearLayout(con);

            TextView txtPricipal = new TextView(con);

            txtPricipal.LayoutParameters = new ViewGroup.LayoutParams(width / 2, 100);
            txtPricipal.Text             = "Principal";

            principalamount = new SfNumericTextBox(con);
            principalamount.FormatString               = "C";
            principalamount.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, 100);
            principalamount.Value                      = 1000;
            principalamount.AllowNull                  = true;
            principalamount.Watermark                  = "Principal Amount";
            principalamount.MaximumNumberDecimalDigits = 2;
            var culture = new Java.Util.Locale("en", "US");

            principalamount.CultureInfo     = culture;
            principalamount.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            principalStack.Orientation      = Orientation.Horizontal;
            principalStack.AddView(txtPricipal);
            principalStack.AddView(principalamount);

            layout.AddView(principalStack);

            TextView dummy3 = new TextView(con);

            layout.AddView(dummy3);

            /*
             * Interest Input Box
             */

            LinearLayout InterestcalStack = new LinearLayout(con);

            TextView txtInterest = new TextView(con);

            txtInterest.LayoutParameters = new ViewGroup.LayoutParams(width / 2, 100);
            txtInterest.Text             = "Interest Rate";
            Interestvalue = new SfNumericTextBox(con);
            Interestvalue.FormatString               = "P";
            Interestvalue.PercentDisplayMode         = PercentDisplayMode.Compute;
            Interestvalue.MaximumNumberDecimalDigits = 2;
            Interestvalue.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            Interestvalue.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, 100);
            Interestvalue.Value          = 0.1f;
            Interestvalue.Watermark      = "Rate of Interest";
            Interestvalue.AllowNull      = true;
            Interestvalue.CultureInfo    = culture;
            InterestcalStack.Orientation = Orientation.Horizontal;
            InterestcalStack.AddView(txtInterest);
            InterestcalStack.AddView(Interestvalue);


            layout.AddView(InterestcalStack);

            TextView dummy2 = new TextView(con);

            layout.AddView(dummy2);



            /*
             * Period Input TextBox
             */
            LinearLayout periodStack = new LinearLayout(con);

            TextView period = new TextView(con);

            period.LayoutParameters = new ViewGroup.LayoutParams(width / 2, 100);
            period.Text             = "Term";

            periodValue = new SfNumericTextBox(con);
            periodValue.FormatString = " years";
            periodValue.MaximumNumberDecimalDigits = 0;
            periodValue.LayoutParameters           = new ViewGroup.LayoutParams(width / 2, 100);
            periodValue.Value           = 20;
            periodValue.Watermark       = "Period (in years)";
            periodValue.ValueChangeMode = ValueChangeMode.OnKeyFocus;
            periodValue.CultureInfo     = culture;
            periodValue.AllowNull       = true;

            periodStack.Orientation = Orientation.Horizontal;

            periodStack.AddView(period);
            periodStack.AddView(periodValue);

            layout.AddView(periodStack);



            /*
             * OutPut values
             */

            LinearLayout outputStack = new LinearLayout(con);

            TextView outputtxt = new TextView(con);

            outputtxt.LayoutParameters = new ViewGroup.LayoutParams(width / 2, 100);
            outputtxt.Text             = "Interest";
            outputtxt.SetTextColor(Color.ParseColor("#66BB6A"));

            OutputNumbertxtBox = new SfNumericTextBox(con);
            OutputNumbertxtBox.FormatString = "c";
            OutputNumbertxtBox.MaximumNumberDecimalDigits = 0;
            OutputNumbertxtBox.AllowNull        = true;
            OutputNumbertxtBox.CultureInfo      = culture;
            OutputNumbertxtBox.Watermark        = "Enter Values";
            OutputNumbertxtBox.Clickable        = false;
            OutputNumbertxtBox.Value            = (float)(1000 * 0.1 * 20);
            OutputNumbertxtBox.Enabled          = false;
            OutputNumbertxtBox.LayoutParameters = new ViewGroup.LayoutParams(width / 2, 100);
            OutputNumbertxtBox.ValueChangeMode  = ValueChangeMode.OnLostFocus;


            outputStack.Orientation = Orientation.Horizontal;

            outputStack.AddView(outputtxt);
            outputStack.AddView(OutputNumbertxtBox);
            layout.AddView(outputStack);

            TextView dummy4 = new TextView(con);

            layout.SetPadding(20, 20, 10, 20);
            layout.AddView(dummy4);

            principalamount.ValueChanged += (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
                if (!e.P1.ToString().Equals("") && !periodValue.Value.ToString().Equals("") && !Interestvalue.Value.ToString().Equals(""))
                {
                    OutputNumbertxtBox.Value = e.P1 * periodValue.Value * Interestvalue.Value;
                }
            };

            periodValue.ValueChanged += (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
                if (!e.P1.ToString().Equals("") && !principalamount.Value.ToString().Equals("") && !Interestvalue.Value.ToString().Equals(""))
                {
                    OutputNumbertxtBox.Value = e.P1 * principalamount.Value * Interestvalue.Value;
                }
            };

            Interestvalue.ValueChanged += (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
                if (!e.P1.ToString().Equals("") && !principalamount.Value.ToString().Equals("") && !periodValue.Value.ToString().Equals(""))
                {
                    OutputNumbertxtBox.Value = e.P1 * principalamount.Value * periodValue.Value;
                }
            };

            layout.Touch += (object sender, View.TouchEventArgs e) => {
                if (OutputNumbertxtBox.IsFocused || Interestvalue.IsFocused || periodValue.IsFocused || principalamount.IsFocused)
                {
                    Rect outRect = new Rect();
                    OutputNumbertxtBox.GetGlobalVisibleRect(outRect);
                    Interestvalue.GetGlobalVisibleRect(outRect);
                    periodValue.GetGlobalVisibleRect(outRect);
                    principalamount.GetGlobalVisibleRect(outRect);

                    if (!outRect.Contains((int)e.Event.RawX, (int)e.Event.RawY))
                    {
                        if (!OutputNumbertxtBox.Value.ToString().Equals(""))
                        {
                            OutputNumbertxtBox.ClearFocus();
                        }
                        if (!Interestvalue.Value.ToString().Equals(""))
                        {
                            Interestvalue.ClearFocus();
                        }
                        if (!periodValue.Value.ToString().Equals(""))
                        {
                            periodValue.ClearFocus();
                        }
                        if (!principalamount.Value.ToString().Equals(""))
                        {
                            principalamount.ClearFocus();
                        }
                    }
                    hideSoftKeyboard((Activity)localcontext);
                }
            };



            frameLayout.AddView(layout);

            ScrollView scrollView = new ScrollView(con);

            scrollView.AddView(frameLayout);

            return(scrollView);
        }
		//Java.Lang.Object.Locale localinfo;
		public override View GetSampleContent (Context con)
		{
			Context localcontext = con;
			int width = con.Resources.DisplayMetrics.WidthPixels -40;
			FrameLayout frameLayout = new FrameLayout(con);
			FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent, GravityFlags.FillVertical);
			frameLayout.LayoutParameters = layoutParams;
			LinearLayout layout=new LinearLayout(con);
			layout.LayoutParameters=new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent);
			layout.SetGravity(GravityFlags.FillVertical);
			layout.Orientation=Orientation.Vertical;
			TextView dummy0 = new TextView(con);
			dummy0.Text="Simple Interest Calculator";
			dummy0.Gravity=GravityFlags.Center;
			dummy0.TextSize=24;
			layout.AddView(dummy0);
			TextView dummy7 = new TextView(con);
			layout.AddView(dummy7);
			TextView dummy = new TextView(con);
			dummy.Text="The formula for finding simple interest is:";
			dummy.TextSize=18;
			layout.AddView(dummy);


			layout.FocusableInTouchMode=true;
			SpannableStringBuilder builder = new SpannableStringBuilder();
			TextView dummy1 = new TextView(con);
			String str= "Interest";
			SpannableString strSpannable= new SpannableString(str);
			strSpannable.SetSpan(new ForegroundColorSpan(Color.ParseColor("#66BB6A")), 0, str.Length, 0);
			builder.Append(strSpannable);
			builder.Append(" = Principal * Rate * Time");
			dummy1.SetText(builder, TextView.BufferType.Spannable);
			dummy1.TextSize=18;
			layout.AddView(dummy1);

			TextView dummy8 = new TextView(con);
			layout.AddView(dummy8);

			/*
        Principal amount Stack
       */

			LinearLayout principalStack = new LinearLayout(con);

			TextView txtPricipal = new TextView(con);
			txtPricipal.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			txtPricipal.Text="Principal";

			principalamount =new SfNumericTextBox(con);
			principalamount.FormatString="C";
			principalamount.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			principalamount.Value=1000;
			principalamount.AllowNull = true;
			principalamount.Watermark = "Principal Amount";
			principalamount.MaximumNumberDecimalDigits=2;
			var culture = new Java.Util.Locale("en","US");

			principalamount.CultureInfo = culture;
			principalamount.ValueChangeMode=ValueChangeMode.OnKeyFocus;
			principalStack.Orientation = Orientation.Horizontal;
			principalStack.AddView(txtPricipal);
			principalStack.AddView(principalamount);

			layout.AddView(principalStack);

			TextView dummy3 = new TextView(con);
			layout.AddView(dummy3);

			/*
        Interest Input Box
        */

			LinearLayout InterestcalStack = new LinearLayout(con);

			TextView txtInterest = new TextView(con);
			txtInterest.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			txtInterest.Text="Interest Rate";
			Interestvalue =new SfNumericTextBox(con);
			Interestvalue.FormatString="P"; 
			Interestvalue.PercentDisplayMode=PercentDisplayMode.Compute;
			Interestvalue.MaximumNumberDecimalDigits=2;
			Interestvalue.ValueChangeMode=ValueChangeMode.OnKeyFocus;
			Interestvalue.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			Interestvalue.Value=0.1f;
			Interestvalue.Watermark = "Rate of Interest";
			Interestvalue.AllowNull = true;
			Interestvalue.CultureInfo = culture;
			InterestcalStack.Orientation=Orientation.Horizontal;
			InterestcalStack.AddView(txtInterest);
			InterestcalStack.AddView(Interestvalue);


			layout.AddView(InterestcalStack);

			TextView dummy2 = new TextView(con);
			layout.AddView(dummy2);



			/*
          Period Input TextBox
         */
			LinearLayout periodStack = new LinearLayout(con);

			TextView period = new TextView(con);
			period.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			period.Text="Term";

			periodValue =new SfNumericTextBox(con);
			periodValue.FormatString=" years";
			periodValue.MaximumNumberDecimalDigits=0;
			periodValue.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			periodValue.Value=20;
			periodValue.Watermark = "Period (in years)";
			periodValue.ValueChangeMode=ValueChangeMode.OnKeyFocus;
			periodValue.CultureInfo = culture;
			periodValue.AllowNull = true;

			periodStack.Orientation=Orientation.Horizontal;

			periodStack.AddView(period);
			periodStack.AddView(periodValue);

			layout.AddView(periodStack);



			/*
        OutPut values
         */

			LinearLayout outputStack = new LinearLayout(con);

			TextView outputtxt = new TextView(con);
			outputtxt.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			outputtxt.Text="Interest";
			outputtxt.SetTextColor(Color.ParseColor("#66BB6A"));

			OutputNumbertxtBox =new SfNumericTextBox(con);
			OutputNumbertxtBox.FormatString="c";
			OutputNumbertxtBox.MaximumNumberDecimalDigits=0;
			OutputNumbertxtBox.AllowNull=true;
			OutputNumbertxtBox.CultureInfo = culture;
			OutputNumbertxtBox.Watermark="Enter Values";
			OutputNumbertxtBox.Clickable=false;
			OutputNumbertxtBox.Value = (float)(1000 * 0.1 * 20);
			OutputNumbertxtBox.Enabled=false;
			OutputNumbertxtBox.LayoutParameters=new ViewGroup.LayoutParams(width / 2, 100);
			OutputNumbertxtBox.ValueChangeMode=ValueChangeMode.OnLostFocus;


			outputStack.Orientation=Orientation.Horizontal;

			outputStack.AddView(outputtxt);
			outputStack.AddView(OutputNumbertxtBox);
			layout.AddView(outputStack);

			TextView dummy4 = new TextView(con);
			layout.SetPadding(20, 20, 10, 20);
			layout.AddView(dummy4);

			principalamount.ValueChanged+= (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
				if(!e.P1.ToString().Equals("")&&!periodValue.Value.ToString().Equals("")&&!Interestvalue.Value.ToString().Equals(""))
					OutputNumbertxtBox.Value=e.P1 * periodValue.Value *  Interestvalue.Value;

			};

			periodValue.ValueChanged+= (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
				if(!e.P1.ToString().Equals("")&&!principalamount.Value.ToString().Equals("")&&!Interestvalue.Value.ToString().Equals(""))
					OutputNumbertxtBox.Value=e.P1* principalamount.Value*Interestvalue.Value;

			};

			Interestvalue.ValueChanged+= (object sender, SfNumericTextBox.ValueChangedEventArgs e) => {
				if(!e.P1.ToString().Equals("")&&!principalamount.Value.ToString().Equals("")&&!periodValue.Value.ToString().Equals(""))
					OutputNumbertxtBox.Value=e.P1 * principalamount.Value *  periodValue.Value;

			};

			layout.Touch+= (object sender, View.TouchEventArgs e) => {
				if(OutputNumbertxtBox.IsFocused || Interestvalue.IsFocused ||periodValue.IsFocused || principalamount.IsFocused){
					Rect outRect = new Rect();
					OutputNumbertxtBox.GetGlobalVisibleRect(outRect);
					Interestvalue.GetGlobalVisibleRect(outRect);
					periodValue.GetGlobalVisibleRect(outRect);
					principalamount.GetGlobalVisibleRect(outRect);

					if (!outRect.Contains((int)e.Event.RawX, (int)e.Event.RawY)) {
						if(!OutputNumbertxtBox.Value.ToString().Equals(""))
							OutputNumbertxtBox.ClearFocus();
						if(!Interestvalue.Value.ToString().Equals(""))
							Interestvalue.ClearFocus();
						if(!periodValue.Value.ToString().Equals(""))
							periodValue.ClearFocus();
						if(!principalamount.Value.ToString().Equals(""))
							principalamount.ClearFocus();

					}
					hideSoftKeyboard((Activity)localcontext);
				}
			};






			frameLayout.AddView(layout);

			ScrollView scrollView = new ScrollView(con);
			scrollView.AddView(frameLayout);

			return scrollView;
		}
        public NumericTextBox()
        {
            double height = Bounds.Height;
            double width  = App.ScreenWidth;

            if (Device.Idiom == TargetIdiom.Tablet)
            {
                width /= 2;
            }

            label1 = new Label()
            {
                Text = "Simple Interest Calculator", HeightRequest = 40, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black
            };
            label2 = new Label()
            {
                Text = "The formula for finding simple interest is :", HeightRequest = 45, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black
            };
            label3 = new Label()
            {
                Text = "Interest = Principal * Rate * Time", HeightRequest = 40, HorizontalOptions = LayoutOptions.Center, TextColor = Color.Black
            };
            label4 = new Label()
            {
                Text = "Principal", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black
            };
            label5 = new Label()
            {
                Text = "Interest Rate", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black
            };
            label6 = new Label()
            {
                Text = "Term", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black
            };
            label7 = new Label()
            {
                Text = "Interest", HeightRequest = 40, WidthRequest = width / 2, VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Black
            };
            label11 = new Label()
            {
                Text = "  " + "Culture", HeightRequest = 40, WidthRequest = width / 2, HorizontalOptions = LayoutOptions.Start, TextColor = Color.Gray
            };
            label12 = new Label()
            {
                Text = "  " + "AllowNull", HeightRequest = 40, WidthRequest = width / 2, HorizontalOptions = LayoutOptions.Start, VerticalOptions = LayoutOptions.Center, TextColor = Color.Gray
            };
            label1.FontAttributes  = FontAttributes.None;
            label1.FontSize        = 22;
            label2.FontAttributes  = FontAttributes.None;
            label2.FontSize        = 20;
            label3.FontAttributes  = FontAttributes.None;
            label3.FontSize        = 20;
            label4.FontAttributes  = FontAttributes.None;
            label4.FontSize        = 18;
            label5.FontAttributes  = FontAttributes.None;
            label5.FontSize        = 18;
            label6.FontAttributes  = FontAttributes.None;
            label6.FontSize        = 18;
            label7.FontAttributes  = FontAttributes.None;
            label7.FontSize        = 18;
            label11.FontAttributes = FontAttributes.None;
            label11.FontSize       = 20;
            label12.FontAttributes = FontAttributes.None;
            label12.FontSize       = 20;
            label12.YAlign         = TextAlignment.Center;
            toggle1                   = new Switch();
            toggle1.IsToggled         = true;
            toggle1.HorizontalOptions = LayoutOptions.Start;
            toggle1.VerticalOptions   = LayoutOptions.Center;
            toggle1.Toggled          += (object sender, ToggledEventArgs e) =>
            {
                numericTextBox1.AllowNull = e.Value;
                numericTextBox2.AllowNull = e.Value;
                numericTextBox3.AllowNull = e.Value;
                numericTextBox4.AllowNull = e.Value;
            };
            picker = new PickerExt();
            picker.VerticalOptions = LayoutOptions.Start;
            picker.Items.Add("United States");
            picker.Items.Add("United Kingdom");
            picker.Items.Add("Japan");
            picker.Items.Add("France");
            picker.Items.Add("Italy");
            picker.SelectedIndexChanged += (object sender, EventArgs e) =>
            {
                switch (picker.SelectedIndex)
                {
                case 0:
                {
                    numericTextBox1.Culture = new System.Globalization.CultureInfo("en-US");
                    numericTextBox2.Culture = new System.Globalization.CultureInfo("en-US");
                    numericTextBox4.Culture = new System.Globalization.CultureInfo("en-US");
                    numericTextBox3.Culture = new System.Globalization.CultureInfo("en-US");
                }
                break;

                case 1:
                {
                    numericTextBox1.Culture = new System.Globalization.CultureInfo("en-GB");
                    numericTextBox2.Culture = new System.Globalization.CultureInfo("en-GB");
                    numericTextBox3.Culture = new System.Globalization.CultureInfo("en-GB");
                    numericTextBox4.Culture = new System.Globalization.CultureInfo("en-GB");
                }
                break;

                case 2:
                {
                    numericTextBox1.Culture = new System.Globalization.CultureInfo("ja-JP");
                    numericTextBox2.Culture = new System.Globalization.CultureInfo("ja-JP");
                    numericTextBox3.Culture = new System.Globalization.CultureInfo("ja-JP");
                    numericTextBox4.Culture = new System.Globalization.CultureInfo("ja-JP");
                }
                break;

                case 3:
                {
                    numericTextBox1.Culture = new System.Globalization.CultureInfo("fr-FR");
                    numericTextBox2.Culture = new System.Globalization.CultureInfo("fr-FR");
                    numericTextBox3.Culture = new System.Globalization.CultureInfo("fr-FR");
                    numericTextBox4.Culture = new System.Globalization.CultureInfo("fr-FR");
                }
                break;

                case 4:
                {
                    numericTextBox1.Culture = new System.Globalization.CultureInfo("it-IT");
                    numericTextBox2.Culture = new System.Globalization.CultureInfo("it-IT");
                    numericTextBox3.Culture = new System.Globalization.CultureInfo("it-IT");
                    numericTextBox4.Culture = new System.Globalization.CultureInfo("it-IT");
                }
                break;
                }
            };
            numericTextBox1           = new SfNumericTextBox();
            numericTextBox1.Watermark = "Enter Principal";
            numericTextBox1.AllowNull = true;
            numericTextBox1.MaximumNumberDecimalDigits = 2;
            numericTextBox1.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            numericTextBox1.FormatString      = "c";
            numericTextBox1.Value             = 1000;
            numericTextBox1.HorizontalOptions = LayoutOptions.End;
            numericTextBox1.VerticalOptions   = LayoutOptions.Center;
            numericTextBox1.ValueChanged     += (object sender, ValueEventArgs e) =>
            {
                numericTextBox4.Value = numericTextBox2.Value * e.Value * numericTextBox3.Value;
            };



            numericTextBox1.Culture = new System.Globalization.CultureInfo("en-US");

            numericTextBox2           = new SfNumericTextBox();
            numericTextBox2.Watermark = "Enter RI";
            numericTextBox2.AllowNull = true;
            numericTextBox2.MaximumNumberDecimalDigits = 0;
            numericTextBox2.PercentDisplayMode         = PercentDisplayMode.Compute;
            numericTextBox2.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            numericTextBox2.FormatString      = "p";
            numericTextBox2.Value             = 0.1f;
            numericTextBox2.HorizontalOptions = LayoutOptions.End;
            numericTextBox2.VerticalOptions   = LayoutOptions.Center;
            numericTextBox2.Culture           = new System.Globalization.CultureInfo("en-US");
            numericTextBox2.ValueChanged     += (object sender, ValueEventArgs e) =>
            {
                numericTextBox4.Value = numericTextBox1.Value * e.Value * numericTextBox3.Value;
            };
            numericTextBox3           = new SfNumericTextBox();
            numericTextBox3.Watermark = "Enter Years";
            numericTextBox3.AllowNull = true;
            numericTextBox3.MaximumNumberDecimalDigits = 0;
            numericTextBox3.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            numericTextBox3.FormatString      = "years";
            numericTextBox3.Value             = 20;
            numericTextBox3.HorizontalOptions = LayoutOptions.End;
            numericTextBox3.VerticalOptions   = LayoutOptions.Center;
            numericTextBox3.ValueChanged     += (object sender, ValueEventArgs e) =>
            {
                numericTextBox4.Value = numericTextBox1.Value * numericTextBox2.Value * e.Value;
            };
            numericTextBox3.Culture = new System.Globalization.CultureInfo("en-US");

            numericTextBox4           = new SfNumericTextBox();
            numericTextBox4.Watermark = "Enter a number";
            numericTextBox4.AllowNull = true;
            numericTextBox4.MaximumNumberDecimalDigits = 0;
            numericTextBox4.ValueChangeMode            = ValueChangeMode.OnKeyFocus;
            numericTextBox4.HorizontalOptions          = LayoutOptions.End;
            numericTextBox4.FormatString    = "c";
            numericTextBox4.Value           = (float)1000 * 0.1 * 20;
            numericTextBox4.VerticalOptions = LayoutOptions.Center;
            numericTextBox4.Culture         = new System.Globalization.CultureInfo("en-US");
            numericTextBox4.IsEnabled       = false;
            this.BackgroundColor            = Color.White;

            if (Device.OS == TargetPlatform.iOS)
            {
                numericTextBox1.WidthRequest = width / 2;
                numericTextBox2.WidthRequest = width / 2;
                numericTextBox3.WidthRequest = width / 2;
                numericTextBox4.WidthRequest = width / 2;
                toggle1.WidthRequest         = width / 2;
            }
            else if (Device.OS == TargetPlatform.WinPhone)
            {
                numericTextBox1.WidthRequest    = width / 2;
                numericTextBox2.WidthRequest    = width / 2;
                numericTextBox3.WidthRequest    = width / 2;
                numericTextBox4.WidthRequest    = width / 2;
                toggle1.WidthRequest            = width / 2;
                toggle1.HorizontalOptions       = LayoutOptions.End;
                label1.TextColor                = Color.White;
                label2.TextColor                = Color.White;
                label3.TextColor                = Color.White;
                label4.TextColor                = Color.White;
                label5.TextColor                = Color.White;
                label6.TextColor                = Color.White;
                label7.TextColor                = Color.White;
                numericTextBox1.BackgroundColor = Color.White;
                numericTextBox2.BackgroundColor = Color.White;
                numericTextBox3.BackgroundColor = Color.White;
                numericTextBox4.BackgroundColor = Color.White;
                numericTextBox2.FormatString    = "0 %";
                numericTextBox3.FormatString    = "0 years";
                this.BackgroundColor            = Color.Black;
            }
            else
            {
                numericTextBox1.WidthRequest = width / 3;
                numericTextBox2.WidthRequest = width / 3;
                numericTextBox3.WidthRequest = width / 3;
                numericTextBox4.WidthRequest = width / 3;
            }
            if (Device.OS == TargetPlatform.Windows)
            {
                label1.TextColor = Color.Gray;
                label2.TextColor = Color.Gray;
                label3.TextColor = Color.Gray;
                label4.TextColor = Color.Gray;
                label5.TextColor = Color.Gray;
                label6.TextColor = Color.Gray;
                label7.TextColor = Color.Gray;
                numericTextBox1.BackgroundColor = Color.White;
                numericTextBox2.BackgroundColor = Color.White;
                numericTextBox3.BackgroundColor = Color.White;
                numericTextBox4.BackgroundColor = Color.White;
                this.BackgroundColor            = Color.Black;
                numericTextBox2.FormatString    = "0 %";
                numericTextBox3.FormatString    = "0 years";
                if (Device.Idiom != TargetIdiom.Tablet)
                {
                    numericTextBox4.IsEnabled = true;
                }
            }
            this.ContentView = GetNumeric();
            PropertyView     = GetOptionPage();
        }
Пример #15
0
        public NumericTextBox_Tablet()
        {
            controlView = new UIView();

            //principalNumericTextBox
            principalNumericTextBox           = new SfNumericTextBox();
            principalNumericTextBox.Watermark = "Enter Principal";
            principalNumericTextBox.AllowNull = true;
            principalNumericTextBox.MaximumNumberDecimalDigits = 2;
            principalNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            principalNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            principalNumericTextBox.FormatString       = "c";
            principalNumericTextBox.Value              = 1000;
            principalNumericTextBox.Layer.CornerRadius = 8;
            principalNumericTextBox.ClipsToBounds      = true;
            principalNumericTextBox.Layer.BorderWidth  = (nfloat)1.2;
            principalNumericTextBox.Layer.BorderColor  = UIColor.Black.CGColor;
            principalNumericTextBox.CultureInfo        = new NSLocale("en_US");
            controlView.AddSubview(principalNumericTextBox);

            //interestRateNumericTextBox
            interestRateNumericTextBox                            = new SfNumericTextBox();
            interestRateNumericTextBox.Watermark                  = "Enter RI";
            interestRateNumericTextBox.AllowNull                  = true;
            interestRateNumericTextBox.Layer.CornerRadius         = 8;
            interestRateNumericTextBox.ClipsToBounds              = true;
            interestRateNumericTextBox.Layer.BorderWidth          = (nfloat)1.2;
            interestRateNumericTextBox.MaximumNumberDecimalDigits = 0;
            interestRateNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            interestRateNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            interestRateNumericTextBox.FormatString               = @"p";
            interestRateNumericTextBox.Value                      = 1f;
            interestRateNumericTextBox.CultureInfo                = new NSLocale("en_US");
            controlView.AddSubview(interestRateNumericTextBox);

            //periodNumericTextBox
            periodNumericTextBox           = new SfNumericTextBox();
            periodNumericTextBox.Watermark = @"Enter Years";
            periodNumericTextBox.AllowNull = true;
            periodNumericTextBox.MaximumNumberDecimalDigits = 0;
            periodNumericTextBox.Layer.CornerRadius         = 8;
            periodNumericTextBox.ClipsToBounds      = true;
            periodNumericTextBox.Layer.BorderWidth  = (nfloat)1.2;
            periodNumericTextBox.PercentDisplayMode = SFNumericTextBoxPercentDisplayMode.Compute;
            periodNumericTextBox.ValueChangeMode    = SFNumericTextBoxValueChangeMode.OnLostFocus;
            periodNumericTextBox.FormatString       = @"years";
            periodNumericTextBox.Value       = 20;
            periodNumericTextBox.CultureInfo = new NSLocale("en_US");
            controlView.AddSubview(periodNumericTextBox);

            //outputNumericTextBox
            outputNumericTextBox           = new SfNumericTextBox();
            outputNumericTextBox.Watermark = @"Enter a number";
            outputNumericTextBox.AllowNull = true;
            outputNumericTextBox.MaximumNumberDecimalDigits = 0;
            outputNumericTextBox.Layer.CornerRadius         = 8;
            outputNumericTextBox.ClipsToBounds      = true;
            outputNumericTextBox.Layer.BorderWidth  = (nfloat)1.2;
            outputNumericTextBox.PercentDisplayMode = SFNumericTextBoxPercentDisplayMode.Compute;
            outputNumericTextBox.ValueChangeMode    = SFNumericTextBoxValueChangeMode.OnLostFocus;
            outputNumericTextBox.FormatString       = @"c";
            outputNumericTextBox.Value       = 2000;
            outputNumericTextBox.Enabled     = false;
            outputNumericTextBox.TextColor   = UIColor.Gray;
            outputNumericTextBox.CultureInfo = new NSLocale("en_US");
            controlView.AddSubview(outputNumericTextBox);
            this.AddSubview(controlView);

            principalNumericTextBox.ValueChanged    += Box_ValueChanged;
            periodNumericTextBox.ValueChanged       += Box_ValueChanged;
            interestRateNumericTextBox.ValueChanged += Box_ValueChanged;
            this.mainPageDesign();
            this.loadOptionView();
        }
        public NumericTextBox_Mobile()
        {
            this.OptionView = new UIView();
            //cultureList
            this.cultureList.Add((NSString)"United States");
            this.cultureList.Add((NSString)"United Kingdom");
            this.cultureList.Add((NSString)"Japan");
            this.cultureList.Add((NSString)"France");
            this.cultureList.Add((NSString)"Italy");

            //principalNumericTextBox
            principalNumericTextBox           = new SfNumericTextBox();
            principalNumericTextBox.Watermark = "Enter Principal";
            principalNumericTextBox.AllowNull = true;
            principalNumericTextBox.MaximumNumberDecimalDigits = 2;
            principalNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            principalNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            principalNumericTextBox.FormatString = "c";
            principalNumericTextBox.Value        = 1000;
            principalNumericTextBox.CultureInfo  = new NSLocale("en_US");
            this.AddSubview(principalNumericTextBox);

            //interestRateNumericTextBox
            interestRateNumericTextBox           = new SfNumericTextBox();
            interestRateNumericTextBox.Watermark = "Enter RI";
            interestRateNumericTextBox.AllowNull = true;
            interestRateNumericTextBox.MaximumNumberDecimalDigits = 0;
            interestRateNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            interestRateNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            interestRateNumericTextBox.FormatString = @"p";
            interestRateNumericTextBox.Value        = 1f;
            interestRateNumericTextBox.CultureInfo  = new NSLocale("en_US");
            this.AddSubview(interestRateNumericTextBox);

            //periodNumericTextBox
            periodNumericTextBox           = new SfNumericTextBox();
            periodNumericTextBox.Watermark = @"Enter Years";
            periodNumericTextBox.AllowNull = true;
            periodNumericTextBox.MaximumNumberDecimalDigits = 0;
            periodNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            periodNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            periodNumericTextBox.FormatString = @"years";
            periodNumericTextBox.Value        = 20;
            periodNumericTextBox.CultureInfo  = new NSLocale("en_US");
            this.AddSubview(periodNumericTextBox);

            //outputNumericTextBox
            outputNumericTextBox           = new SfNumericTextBox();
            outputNumericTextBox.Watermark = @"Enter a number";
            outputNumericTextBox.AllowNull = true;
            outputNumericTextBox.MaximumNumberDecimalDigits = 0;
            outputNumericTextBox.PercentDisplayMode         = SFNumericTextBoxPercentDisplayMode.Compute;
            outputNumericTextBox.ValueChangeMode            = SFNumericTextBoxValueChangeMode.OnLostFocus;
            outputNumericTextBox.FormatString = @"c";
            outputNumericTextBox.Value        = 2000;
            outputNumericTextBox.Enabled      = false;
            outputNumericTextBox.TextColor    = UIColor.Gray;
            outputNumericTextBox.CultureInfo  = new NSLocale("en_US");
            this.AddSubview(outputNumericTextBox);
            principalNumericTextBox.ValueChanged    += Box_ValueChanged;
            periodNumericTextBox.ValueChanged       += Box_ValueChanged;
            interestRateNumericTextBox.ValueChanged += Box_ValueChanged;
            mainPageDesign();
        }
 public override void OnInitializeEditView(DataColumnBase dataColumn, SfNumericTextBox view)
 {
     base.OnInitializeEditView(dataColumn, view);
     view.BackgroundColor = UIColor.Cyan;
 }