如何在C#中的Windows窗体应用程序的文本框中显示计算值?

时间:2015-05-01 09:09:06

标签: c# windows visual-studio-2013

我正在尝试计算圆的面积。我在一个名为textBox1的文本框中取值,我必须将计算出的答案显示在另一个名为textBox2的文本框中。我做了第一部分,但不知道如何做第二部分。 Plz指南......

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

namespace AreaOfCircle
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    int radius;
    const double PI = 3.14159;
    double area; 

    private void textBox1_TextChanged(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
    {
        radius = int.Parse(textBox1.Text);
        area = PI * radius * radius;

        textBox2.Text = area;    /// here it is showing error now        
    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {

    }
}
}

5 个答案:

答案 0 :(得分:0)

假设:输入textbox1 = radius。

double radius, area;

if(double.TryParse(txtRadius.Text,out radius)
{
      area = 3.14*radius*radius;
}

txtResult.Text = area;

答案 1 :(得分:0)

<input type="hidden" value="${whatever}" name="myfield">

答案 2 :(得分:0)

  

area.ToString()可能会解决您的问题,但您应该使用 Convert.ToString(area)

如果你在任何情况下获得值 null ,那么Convert.ToString()不会抛出运行时异常,但ToString会抛出。

答案 3 :(得分:0)

您的代码在您正在做的事情上没有错误,但是您似乎忘记了一小步。当您将鼠标悬停在 format.js { render :action => 'create' } 行中的area时,它会显示

  

“无法将类型'double'隐式转换为'string'

其中指出,如果你想把东西放到文本框中,你需要将它作为一个字符串。有多种方法可以将区域转换为字符串。一些例子是:

textBox2.Text = area;

我希望这对您有用,并且您将来会从中学到一些东西。如果有任何问题请随时提出。

答案 4 :(得分:-1)

您必须将area转换为String

textBox2.Text = area.ToString();