با سلام من میخوام که کاربر در تکست باکس اعداد کسری وارد کنه و اون عدد کسری رو بتونم در تکست باکس دیگه ای عملیات محاسبه روش انجام بدم اگه راهی داره بفرمایید لطفا همراه با کد نویسی با تشکر
private double [B][COLOR="#0000FF"]TextToDouble[/COLOR][/B](string text)
{
double n, m;
var ops = text.Split('/');
double.TryParse(ops[0], out n);
for (int i = 1; i < ops.Length; i++)
{
if (double.TryParse(ops[1], out m))
{
n /= m;
}
else
{
break;
}
}
return n;
}
double n = [B][COLOR="#0000FF"]TextToDouble[/COLOR][/B](textBox1.Text);
می توانید یک کاراکتر مثل / رو نماد تقسیم در نظر بگیرید و در TextBox کاربر چه 0.25 (بیست و پنج صدم) بنویسه و چه 1/4 (کسر یک چهارم) بنویسه یک مقدار یکسان در نظر گرفته بشه :
کد:private double [B][COLOR=#0000FF]TextToDouble[/COLOR][/B](string text) { double n, m; var ops = text.Split('/'); double.TryParse(ops[0], out n); for (int i = 1; i < ops.Length; i++) { if (double.TryParse(ops[1], out m)) { n /= m; } else { break; } } return n; }
مثلا :
کد:double n = [B][COLOR=#0000FF]TextToDouble[/COLOR][/B](textBox1.Text);
با سلام کد فوق رو کجا باید وارد کنم
اول یک نکته هست، وقتی مقدار textBox2 تغییر می کنه مقدار داخل textBox1 رو محاسبه می کنید، آیا این در کد شما منطقی ئه یا می خواستید مقدار textBox2 رو در n حساب کنه؟با سلام من کد رو به این صورت نوشتم ولی عملیاتی انجام نمیشه
public partial class Form1 : Form
{
private double TextToDouble(string text)
{
double n, m;
var ops = text.Split('/');
double.TryParse(ops[0], out n);
for (int i = 1; i < ops.Length; i++)
{
if (double.TryParse(ops[1], out m))
{
n /= m;
}
else
{
break;
}
}
return n;
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
double n = TextToDouble(textBox1.Text);
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
double n = TextToDouble([B][COLOR="#0000FF"]textBox2[/COLOR][/B].Text);
[B][COLOR="#0000FF"] Text = n.ToString();[/COLOR][/B]
}