C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!

先入正题吧!

1:创建wpf应用。我用的VS是2013!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第1张图片

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第2张图片

2:创建wpf文件并且起名字!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第3张图片

3:起一条虚线

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第4张图片

3:打开我们电脑基本的计算器,然后我们模仿他来做计算器吧!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第5张图片

4:在工具箱找到lable,把他拖进来。并且起一个名字!设置他的属性。

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第6张图片

4:再然后在工具箱找到button按钮把他拖进来。并且帮他起名字,还有设置他的属性!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第7张图片

5:写完整的界面,按钮直接复制粘贴就可以的!下一步进行后台代码!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第8张图片

6:定义三个变量存放数据!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第9张图片

7:设置按钮0的点击事件!然后数字键复制粘贴就可以了!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第10张图片

8:设置符号键,给他赋值!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第11张图片

9:设置C按键清除所有!这个问了很多人才找到的C按键清除lable!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第12张图片

10:设置等于号按键促发加减乘除!

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第13张图片

11:然后一个计算器完成了!下面是全部代码!

namespace LVcalculation
{
    ///


    /// MainWindow.xaml 的交互逻辑
    ///

    public partial class MainWindow : Window
    {
        string number1 = null, number2 = null,flag=null;//第一个变量存放按下的第一个字符,第二个变量存放按下符号键的字符。第三个存放符号的字符!


        public MainWindow()
        {
            InitializeComponent();
        }


        private void button0_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "0";
                lable1.Content = number1;
            }
            else {
                number2 = number2 + "0";
                lable1.Content = number2;
            
            }


        }


        private void button1_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "1";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "1";
                lable1.Content = number2;


            }
        }


        private void button2_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "2";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "2";
                lable1.Content = number2;


            }
        }


        private void button3_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "3";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "3";
                lable1.Content = number2;


            }
        }


        private void button4_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "4";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "4";
                lable1.Content = number2;


            }
        }


        private void button5_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "5";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "5";
                lable1.Content = number2;


            }
        }


        private void button6_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "6";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "6";
                lable1.Content = number2;


            }
        }


        private void button7_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "7";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "7";
                lable1.Content = number2;


            }
        }


        private void button8_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "8";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "8";
                lable1.Content = number2;


            }
        }


        private void button9_Click(object sender, RoutedEventArgs e)
        {


            if (flag == null)
            {
                number1 = number1 + "9";
                lable1.Content = number1;
            }
            else
            {
                number2 = number2 + "9";
                lable1.Content = number2;


            }
        }


        private void buttonb_Click(object sender, RoutedEventArgs e)
        {
            flag = "-";
        }


        private void buttona_Click(object sender, RoutedEventArgs e)
        {
            flag = "+";
        }


        private void buttone_Click(object sender, RoutedEventArgs e)
        {
            flag = "%";
        }


        private void buttond_Click(object sender, RoutedEventArgs e)
        {
            flag = "/";
        }


        private void buttonc_Click(object sender, RoutedEventArgs e)
        {
            flag = "*";
        }


        private void buttoncc_Click(object sender, RoutedEventArgs e)
        {
           this.lable1.Content = "";
        }


        private void buttongg_Click(object sender, RoutedEventArgs e)
        {
            if (flag == null)
            {
                number1 = number1 + ".";
                lable1.Content = number1;
            }
            else {
                number2 = number2 + ".";
                lable1.Content = number2;
            
            }
        }


        private void buttonf_Click(object sender, RoutedEventArgs e)
        {
           switch(flag){


               case "+": lable1.Content= Convert.ToString(Convert.ToDouble(number1) + Convert.ToDouble(number2));
                   break;
               case "-": lable1.Content = Convert.ToString(Convert.ToDouble(number1) - Convert.ToDouble(number2));
                   break;
               case "*": lable1.Content = Convert.ToString(Convert.ToDouble(number1) * Convert.ToDouble(number2));
                   break;
               case "/": lable1.Content = Convert.ToString(Convert.ToDouble(number1) / Convert.ToDouble(number2));
                   break;
               case "%": lable1.Content = Convert.ToString(Convert.ToDouble(number1) % Convert.ToDouble(number2));
                   break;
           }
           number1 = null;
           number2 = null;
           flag = null;
        }




    }

}

12:还有一种方法写!注意这个方法的是用textbox,不是用lable。

C#WPF计算器!一个刚刚入门一个星期Csharp的应届生!_第14张图片

13:下面是这个的全部代码!

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="为什么我写的计算器这么多bug" Height="350" MaxHeight="350" MinHeight="350" Width="525" MaxWidth="525" MinWidth="525"
        >
   
        
       
           
           
           
           
           
           
       

       
           
           
           
           
       

       
       

你可能感兴趣的:(C#)