Telerik RadTextBox in Windows Phone 7

Introduction

 

Today, in this article let's play around with another interesting concepts of Telerik RadControls.

 

Question: What is RadTextbox?

 

In simple terms "The RadTextBox control extends the standard TextBox and provides additional functionality like header and watermark. It also has two buttons: Clear Button and Action Button".

 

I think we are now good to go and implement this wonderful concept.

 

Step 1: The complete code of MainPage.xaml looks like this:
 

<phone:PhoneApplicationPagex:Class="RadTextBoxApplication.MainPage"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"FontFamily="{StaticResource PhoneFontFamilyNormal}"FontSize="{StaticResource PhoneFontSizeNormal}"Foreground="{StaticResource PhoneForegroundBrush}"SupportedOrientations="Portrait"  Orientation="Portrait"shell:SystemTray.IsVisible="True" xmlns:telerikPrimitives="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Primitives" Loaded="MainPage1_Loaded">

       <!--LayoutRoot is the root grid where all page content is placed-->

       <Grid x:Name="LayoutRoot" Background="Transparent">

              <Grid.RowDefinitions>

                     <RowDefinition Height="Auto"/>

                     <RowDefinition Height="*"/>

              </Grid.RowDefinitions>

              <!--TitlePanel contains the name of the application and page title-->

              <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">

                     <TextBlock x:Name="ApplicationTitle" Text="RadTextBox-Application" Style="{StaticResource PhoneTextNormalStyle}"/>

                     <TextBlock x:Name="PageTitle" Text="Windows 7 Phone" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>

              </StackPanel>

              <!--ContentPanel - place additional content here-->

              <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">

                     <telerikPrimitives:RadTextBox HorizontalAlignment="Left" Margin="77,20,0,478" Width="311" Name="radTxtBox1" Header="Please Enter First Number:" FontFamily="Verdana" FontSize="22" ActionButtonVisibility="Visible"  />

                     <telerikPrimitives:RadTextBox Height="118" HorizontalAlignment="Left" Margin="63,135,0,0"   VerticalAlignment="Top" Width="340" Name="radTxtBox2" Header="Please Enter Second Number:" FontFamily="Verdana" FontSize="22" ActionButtonVisibility="Visible"  />

                     <Button Content="Addition" Height="72" HorizontalAlignment="Left" Margin="122,272,0,0" VerticalAlignment="Top" Width="238" Click="Button1_Click" FontFamily="Verdana" FontSize="22"/>

                     <Button Content="Substraction" Height="72" HorizontalAlignment="Left" Margin="122,350,0,0" VerticalAlignment="Top" Width="238" Click="Button2_Click" FontFamily="Verdana" FontSize="22"/>

                     <Button Content="Multiplication" Height="72" HorizontalAlignment="Left" Margin="122,428,0,0" VerticalAlignment="Top" Width="238" Click="Button3_Click" FontFamily="Verdana" FontSize="22"/>

                     <Button Content="Division" Height="72" HorizontalAlignment="Left" Margin="122,506,0,0" VerticalAlignment="Top" Width="238" Click="Button4_Click" FontFamily="Verdana" FontSize="22"/>

              </Grid>

       </Grid>

       </phone:PhoneApplicationPage>

 

Step 2: The complete code of Arthmetic.cs looks like this:
 

namespace RadTextBoxApplication

{

    public class Arthmetic

    {

        public double Add(double a, double b)

        {

            return a + b;

        }

        public double Sub(double a, double b)

        {

            return a - b;

        }

        public double Mul(double a, double b)

        {

            return a * b;

        }

        public double Div(double a, double b)

        {

            return a / b;

        }

    }

}

 

Step 3: The complete code of MainPage.xaml.cs looks like this:


 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Net;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Animation;

using System.Windows.Shapes;

using Microsoft.Phone.Controls;

using Telerik.Windows.Controls;namespace RadTextBoxApplication

{

    public partial class MainPage : PhoneApplicationPage

    {

        // Constructorpublic MainPage()

    {

        InitializeComponent();

    }

    public void MainPage1_Loaded(object sender, RoutedEventArgs e)

{

    radTxtBox1.Focus();

}

    public void Button1_Click(object sender, RoutedEventArgs e)

{

    if

    (string.IsNullOrEmpty(radTxtBox1.Text) || string.IsNullOrEmpty(radTxtBox2.Text))

{

    RadMessageBox.Show("Please Enter Some Values", MessageBoxButtons.OKCancel,null,null,false,false,HorizontalAlignment.Center, VerticalAlignment.Center);

}

    else

{

    double add = _objArthmetic.Add(double.Parse(radTxtBox1.Text), double.Parse(radTxtBox2.Text));

    RadMessageBox.Show("Addition Result is: " + Convert.ToString(add), MessageBoxButtons.OKCancel,"RadTextBox-Application", null, false, false, HorizontalAlignment.Center,VerticalAlignment.Center, null);

    radTxtBox1.Text = string.Empty;radTxtBox2.Text = string.Empty;

}

}

    public void Button2_Click(object sender, RoutedEventArgs e)

{

    if (string.IsNullOrEmpty(radTxtBox1.Text) || string.IsNullOrEmpty(radTxtBox2.Text))

{

    RadMessageBox.Show("Please Enter Some Values", MessageBoxButtons.OKCancel, null, null, false, false, HorizontalAlignment.Center, VerticalAlignment.Center);

}

    else

{

    double sub = _objArthmetic.Sub(double.Parse(radTxtBox1.Text), double.Parse(radTxtBox2.Text));

    RadMessageBox.Show("Substraction Result is: " + Convert.ToString(sub), MessageBoxButtons.OKCancel,"RadTextBox-Application", null, false, false, HorizontalAlignment.Center,VerticalAlignment.Center, null);

    radTxtBox1.Text = string.Empty;radTxtBox2.Text = string.Empty;

}

}

    public void Button3_Click(object sender, RoutedEventArgs e)

{

    if (string.IsNullOrEmpty(radTxtBox1.Text) || string.IsNullOrEmpty(radTxtBox2.Text))

{

    RadMessageBox.Show("Please Enter Some Values", MessageBoxButtons.OKCancel, null, null, false, false, HorizontalAlignment.Center, VerticalAlignment.Center);

}

    else

{

    double mul = _objArthmetic.Mul(double.Parse(radTxtBox1.Text), double.Parse(radTxtBox2.Text));

    RadMessageBox.Show("Multiplication Result is: " + Convert.ToString(mul), MessageBoxButtons.OKCancel,"RadTextBox-Application", null, false, false, HorizontalAlignment.Center,VerticalAlignment.Center, null);

    radTxtBox1.Text = string.Empty;radTxtBox2.Text = string.Empty;

}

}

    public void Button4_Click(object sender, RoutedEventArgs e)

{

    if (string.IsNullOrEmpty(radTxtBox1.Text) || string.IsNullOrEmpty(radTxtBox2.Text))

{

    RadMessageBox.Show("Please Enter Some Values", MessageBoxButtons.OKCancel, null, null, false, false, HorizontalAlignment.Center, VerticalAlignment.Center);

}

    else

{

    double div = _objArthmetic.Div(double.Parse(radTxtBox1.Text), double.Parse(radTxtBox2.Text));

    RadMessageBox.Show("Division Result is: " + Convert.ToString(div), MessageBoxButtons.OKCancel,"RadTextBox-Application", null, false, false, HorizontalAlignment.Center,VerticalAlignment.Center, null);

    radTxtBox1.Text = string.Empty;radTxtBox2.Text = string.Empty;

}

}

    #region Instance Variablesprivate readonly Arthmetic _objArthmetic = new Arthmetic();

    #endregion

}

}


Step 4: The output of the application looks like this:
 

Ouput1.png
 

 Step 5: The output of the nothing entered application looks like this:

 

Ouput2.png
 

Step 6: The output of the addition operation application looks like this:
 

Ouput3.png
 

 Step 7: The output of the multiplication operation application looks like this:

 Ouput4.png

I hope this article is useful for you.

Next Recommended Readings
MVC Corporation
MVC Corporation is consulting and IT services based company.