【发布时间】:2017-02-26 12:24:59
【问题描述】:
我正在制作一个非常简单的订单表格,该表格将通过标签打印机打印出来。
我有一个richTextBox 来显示已添加的项目和数量,但我不知道如何编辑文本框的“部分”是添加了同一项目的多个项目。
我目前有 2 个按钮,1 个用于鸡肉,1 个用于鲑鱼。
private void button1_Click(object sender, EventArgs e)
{
chickenCount++;
richTextBox1.Text = richTextBox1.Text + "\nChicken " + chickenCount + "x";
}
和
private void button3_Click(object sender, EventArgs e)
{
salmonCount++;
richTextBox1.Text = richTextBox1.Text + "\nSalmon " + salmonCount + "x";
}
假设您添加了 1 只鸡,然后添加了 1 条鲑鱼,然后再添加了另一只鸡。
使用此代码,输出将是:
Chicken 1x
Salmon 1x
Chicken 2x
现在我知道这段代码只是不断在richTextBox 的下一行添加文本
但我想要的输出是:
Chicken 2x
Salmon 1x
但我不确定如何编辑 richTextBox 的内联内容
【问题讨论】:
-
不能重写richtextbox的全部内容吗?
-
??? a) 你不想要鸡肉 3x 吗? b) 为什么使用 RichtTextBox? c)如果你想要格式化,你永远不必直接更改文本! d) 您需要保留一个包含数据的列表或字典,以便在创建文本之前 进行数学计算 e) 您打算如何打印? RTB 帮不了你!
-
您可以使用
ObservableCollection并在RichTextBox更改时更新它(完全重写) -
a) 不,在我的示例中,按钮只被按下了两次。但由于按钮只是在下一行添加文本,最后一个鸡是正确的,所以我希望能够覆盖第一个。所以鸡 2x 是正确的。 b)我是一个新手程序员,这就是我想这样做的方式。 e) 它通过 dymo SDK 打印到 Dymo Label writer。我已经开始工作了。
-
谢谢 Emanuel 和 Rene,我会看看这种方法!非常感谢。
标签: c# text richtextbox