ARTICLE

Complex Class in .NET

Posted by Vijay Prativadi Articles | C# Language October 27, 2012
Today, in this article let’s play around with one of the interesting and most useful concepts in C#.
Reader Level:

Introduction

Today, in this article let's play around with one of the interesting and most useful concepts in C#.

Question: What is complex class?

In simple terms "It includes a list of methods like Add, Subtract, Multiply and so on. Where the respective operations can be performed based on the numeric inputs".

Step 1:
Create an "ASP.NET Web Application", as in:

ASP.NET-WebForm-project.png

Step 2: The complete code WebForm1.aspx looks like this:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="ComplexClassApp.WebForm1" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title></title>
</head>
<
body>
    <form id="form1" runat="server">
    <center>
        <div>
            <table>
                <tr>
                    <td colspan="2">
                        <asp:Label ID="Label1" runat="server" Text="Complex Class in .NET" Font-Bold="true"
                            Font-Size="Large" Font-Names="Verdana" ForeColor="Maroon"></asp:Label>
                    </td>
                </tr>
                <tr>
                    <td>
                        <asp:Label ID="Label3" runat="server" Text="Please Enter First Number" Font-Size="Large"
                            Font-Names="Verdana" Font-Italic="true"></asp:Label>
                    </td>
                    <td>
                        <asp:TextBox ID="TextBox1" runat="server" Width="120px"></asp:TextBox>
                    </td>
                </tr>
                <tr>
                    <td>
                        <asp:Label ID="Label2" runat="server" Text="Please Enter Second Number" Font-Size="Large"
                            Font-Names="Verdana" Font-Italic="true"></asp:Label>
                    </td>
                    <td>
                        <asp:TextBox ID="TextBox2" runat="server" Width="120px"></asp:TextBox>
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <asp:Button ID="Button1" runat="server" Text="Addition" Font-Names="Verdana" Width="213px"
                            BackColor="Orange" Font-Bold="True" OnClick="Button1_Click" />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <asp:Button ID="Button2" runat="server" Text="Substraction" Font-Names
="Verdana"
                            Width="213px" BackColor="Orange" Font-Bold="True" OnClick="Button2_Click" />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <asp:Button ID="Button3" runat="server" Text="Multiplication" Font-Names="Verdana"
                            Width="213px" BackColor="Orange" Font-Bold="True" OnClick="Button3_Click" />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <asp:Button ID="Button4" runat="server" Text="Division" Font-Names="Verdana" Width="213px"
                            BackColor="Orange" Font-Bold="True" OnClick="Button4_Click" />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <asp:Label ID="Label5" runat="server" Font-Bold="true" Font-Names="Verdana" ForeColor="Maroon"></asp:Label>
                    </td>
                </tr>
            </table>
        </div>
    </center>
    </form>
</body>
</
html>

Step 3: The complete code WebForm1.aspx.cs looks like this:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Numerics;
namespace ComplexClassApp
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(TextBox1.Text) || string.IsNullOrEmpty(TextBox2.Text))
            {
                Label5.Text = "Please Enter Some Values";
                Label5.ForeColor = System.Drawing.Color.Red;
            }
            else
            {
                Complex obj_Add = Complex.Add(double.Parse(TextBox1.Text), double.Parse(TextBox2.Text));
                Label5.Text = "Addition Result is: " + obj_Add.Real;
                Label5.ForeColor = System.Drawing.Color.Green;
                TextBox1.Text = string.Empty;
                TextBox2.Text = string.Empty;
            }
        }
        protected void Button2_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(TextBox1.Text) || string.IsNullOrEmpty(TextBox2.Text))
            {
                Label5.Text = "Please Enter Some Values";
                Label5.ForeColor = System.Drawing.Color.Red;
            }
            else
            {
                Complex obj_Sub = Complex.Subtract(double.Parse(TextBox1.Text), double.Parse(TextBox2.Text));
                Label5.Text = "Substraction Result is: " + obj_Sub.Real;
                Label5.ForeColor = System.Drawing.Color.Green;
                TextBox1.Text = string.Empty;
                TextBox2.Text = string.Empty;
            }
        }
        protected void Button3_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(TextBox1.Text) || string.IsNullOrEmpty(TextBox2.Text))
            {
                Label5.Text = "Please Enter Some Values";
                Label5.ForeColor = System.Drawing.Color.Red;
            }
            else
            {
                Complex obj_Mul = Complex.Multiply(double.Parse(TextBox1.Text), double.Parse(TextBox2.Text));
                Label5.Text = "Multiplication Result is: " + obj_Mul.Real;
                Label5.ForeColor = System.Drawing.Color.Green;
                TextBox1.Text = string.Empty;
                TextBox2.Text = string.Empty;
            }
        }
        protected void Button4_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(TextBox1.Text) || string.IsNullOrEmpty(TextBox2.Text))
            {
                Label5.Text = "Please Enter Some Values";
                Label5.ForeColor = System.Drawing.Color.Red;
            }
            else
            {
                Complex obj_Div = Complex.Divide(double.Parse(TextBox1.Text), double.Parse(TextBox2.Text));
                Label5.Text = "Division Result is: " + obj_Div.Real;
                Label5.ForeColor = System.Drawing.Color.Green;
                TextBox1.Text = string.Empty;
                TextBox2.Text = string.Empty;
            }
        }
    }
}


Step 4: The output of application looks like this:

WebForm-project.png

Step 5: The addition result output of the application looks like this:

WebForm-project1.png

I hope this article is useful for you.. I look forward for your comments and feedback.. Thanks Vijay Prativadi

Login to add your contents and source code to this article
post comment
     

I like it. Vijay

Posted by Rohatash Kumar Oct 29, 2012

nice article Vijay....

Posted by Richa Garg Oct 29, 2012

nice article Vijay....

Posted by Richa Garg Oct 29, 2012

nice article Vijay....

Posted by Richa Garg Oct 29, 2012

Nice article Vijay...Complex class is used for only mathematical operations or for other operations also?

Posted by Swati Agarwal Oct 29, 2012
COMMENT USING
PREMIUM SPONSORS
DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and add new content to existing PDF documents from within your applications.
Get Career Advice from Experts
SPONSORED BY
  • PDF reports have never been easier to create. With our included WYSIWYG Designer, you can layout your reports, set up your data source and let DynamicPDF ReportWriter do the rest.