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; }
public SettingsPage() { InitializeComponent(); Themes.DataSource = Enum.GetValues(typeof(Theme)).ToList <Enum>(); editPortfolioReturnGoal = new SfNumericTextBox { Value = 0 }; editPortfolioReturnGoal.ValueChanged += Handle_PortfolioGoalChanged; }
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; }
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"); } }
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); }
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); }
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); }); }
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(); }
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; }