用printdocument替换和打印

时间:2014-09-11 22:09:11

标签: .net winforms formatting richtext printdocument

我需要用string.format(rtb.rtf,val1,val2等)替换富文本框中的文本,并使用printdocument打印结果,但有困难

Customer:
{0}
Tag:            {1}
Paymethod:      {2}
─────────────────
Status:     {3}
Cash:           {4}
Balance:        {5}
─────────────────
Subtotal:       {6}
─────────────────
VAT:            {7}
Discount:       {8}
═════════════════
Total:      {9}
═════════════════

当我看到记事本中的富文本时,我看到这样的括号内的数字 {0},{1}等

我很想你的建议

1 个答案:

答案 0 :(得分:2)

解析富文本文件充满了危险,所以我会避免尝试这样做。只需在RichTextBox控件中加载文本,然后通过选择它来替换文本。

for (int i = 0; i < 10; ++i) {
  string findText = "{" + i.ToString() + "}";
  int index = rtb.Text.IndexOf(findText);
  if (index > -1) {
    rtb.Select(index, findText.Length);
    rtb.SelectedText = "new value";
  }
}