C#-从RichTextBox和TextBox中添加两个数字
我有一个用户可以输入的文本框。现在用户可以输入任何内容,但我想限制用户C#-从RichTextBox和TextBox中添加两个数字,c#,textbox,richtextbox,C#,Textbox,Richtextbox,我有一个用户可以输入的文本框。现在用户可以输入任何内容,但我想限制用户 我首先需要只允许用户输入负数或正数和/或十进制数(最多3位) 在RichTextBox中,数据如下所示: 227.905 227.905 242.210 -236.135 5.610 29.665 269.665 253.210 253.210 267.515 -210.830 30.915 54.970 294.970 using System; using System.Collections.Generic;
- 我首先需要只允许用户输入负数或正数和/或十进制数(最多3位)
227.905
227.905
242.210
-236.135
5.610
29.665
269.665
253.210
253.210
267.515
-210.830
30.915
54.970
294.970
using System;
using System.Collections.Generic;
using System.Text;
public class SomeClass
{
public static void Main()
{
// your collection - make this a class member
List<double> nums = new List<double>();
// populate array
nums.Add(227.905);
nums.Add(227.905);
nums.Add(242.210);
nums.Add(-236.135);
// etc.
// faux user data entry - collect it and validate it a button click handler
double userNum = 25.305;
// add new value to items in array
for (int i=0; i<nums.Count; i++) nums[i] += userNum;
// declare string builder for fast string concatenation
StringBuilder sb = new StringBuilder();
// build output string from nums array
foreach (double d in nums)
sb.Append(d.ToString() + System.Environment.NewLine);
// writing to console here but you would do something like:
// _myRichEditControlInstance.Text = sb.ToString();
Console.WriteLine(sb.ToString());
}
}
因此,我尝试将文本框中的字符串值添加到RichTextBox中的每一行中
示例:
如果用户在文本框中输入“25.305”,它会将该值添加到RichTextBox中的每个值中,然后用新值替换RichTextBox中的该值,使更新的RichTextBox如下所示:
227.905
227.905
242.210
-236.135
5.610
29.665
269.665
253.210
253.210
267.515
-210.830
30.915
54.970
294.970
using System;
using System.Collections.Generic;
using System.Text;
public class SomeClass
{
public static void Main()
{
// your collection - make this a class member
List<double> nums = new List<double>();
// populate array
nums.Add(227.905);
nums.Add(227.905);
nums.Add(242.210);
nums.Add(-236.135);
// etc.
// faux user data entry - collect it and validate it a button click handler
double userNum = 25.305;
// add new value to items in array
for (int i=0; i<nums.Count; i++) nums[i] += userNum;
// declare string builder for fast string concatenation
StringBuilder sb = new StringBuilder();
// build output string from nums array
foreach (double d in nums)
sb.Append(d.ToString() + System.Environment.NewLine);
// writing to console here but you would do something like:
// _myRichEditControlInstance.Text = sb.ToString();
Console.WriteLine(sb.ToString());
}
}
- 有人知道怎么做吗
227.905
227.905
242.210
-236.135
5.610
29.665
269.665
253.210
253.210
267.515
-210.830
30.915
54.970
294.970
using System;
using System.Collections.Generic;
using System.Text;
public class SomeClass
{
public static void Main()
{
// your collection - make this a class member
List<double> nums = new List<double>();
// populate array
nums.Add(227.905);
nums.Add(227.905);
nums.Add(242.210);
nums.Add(-236.135);
// etc.
// faux user data entry - collect it and validate it a button click handler
double userNum = 25.305;
// add new value to items in array
for (int i=0; i<nums.Count; i++) nums[i] += userNum;
// declare string builder for fast string concatenation
StringBuilder sb = new StringBuilder();
// build output string from nums array
foreach (double d in nums)
sb.Append(d.ToString() + System.Environment.NewLine);
// writing to console here but you would do something like:
// _myRichEditControlInstance.Text = sb.ToString();
Console.WriteLine(sb.ToString());
}
}
使用系统;
使用System.Collections.Generic;
使用系统文本;
公共类
{
公共静态void Main()
{
//您的收藏-使其成为类成员
List nums=新列表();
//填充数组
增补(227.905);
增补(227.905);
增补(242.210);
增加数值(-236.135);
//等等。
//人造用户数据输入-通过按钮点击处理程序收集并验证
双用户数=25.305;
//向数组中的项添加新值
for(int i=0;i如果RichTextBox.Text返回包含数据的字符串。(抱歉,无法测试)。
string[]Lines=richTextBox.Text.Split(新字符[]{'\r','\n'});
StringBuilder sb=新的StringBuilder();
double d=double.Parse(textBox1.Text);
对于(int i=0;i
它应该能用试试这个
string[] Values = richTextBox1.Text.Split(new char[]{'\r','\n'});
richTextBox1.Clear();
foreach (string Value in Values)
{
richTextBox1.Text += (Convert.ToDouble(Value) + Convert.ToDouble(textBox1.Text))+"\r\n";
}
sb.AppendLine(double.Parse(Lines[i])+d);
行上似乎有错误。它声明“最佳重载方法匹配”System.Text.Stringbuilder.AppendLine(string)“有一些无效参数”。虽然这种方法最终可能会起作用,但我不推荐使用解析方法,因为它可能会在用户交互中产生很多问题。您应该将数据存储在单独的数组中,并且永远不需要解析。@Quantic Programming:仍然是相同的错误。我相信这与行[I]有关+d
?@Colton c'mon您无法理解.ToString()
?您没有任何编程意识吗?(double.Parse(Lines[i])+d)。ToString()
出现错误,指出:“输入字符串的格式不正确。”参考文本框您在文本框中输入的值是什么?在文本框中每次输入一个值如果RichTextBox和textbox不总是相同,我如何进行此操作?当两个文本框中的数据都可以更改时,这似乎是硬编码的。这是一个工作示例,您需要为自己的解决方案重写。如果富格文本框中的a可以更改,然后填充数组的部分需要进行解析,而不是硬编码。我建议使用其他示例中的解析片段,但在将数字输入数组之前添加验证。谢谢,我将重写它以正确解析数据。我查看了您的问题历史记录和通信nts和它似乎正在使用这个网站和一个代码编写服务。问题得到解答,代码片段被复制并粘贴到您的代码中,只需很少的调整。这是一个简单的假设,基于您下面的评论,要求对代码进行调整和错误修复,即使对于初学者来说也应该是微不足道的。请尝试更仔细地理解写出你自己的代码。你将学到更多,因此将成为一个更有价值的资源。