【发布时间】:2018-03-15 23:31:09
【问题描述】:
目前我正在尝试创建一个字典,它将所选项目从列表视图映射到富文本框中的相应字符串输出。我想将字符串中的特定文本加粗,该文本将始终相同(常量),并将动态文本添加到会更改的字符串中。
类似这样的: ID: 8494903282
其中 ID 是我需要加粗的常量文本,而数字将是一个变化的动态 ID。我将需要多行具有这种格式的不同数据,这些数据将发生变化:
ID: 8494903282
姓名:一些名字
日期: 2018 年 3 月 15 日
目前我有一个富文本框要输出到,我正在尝试使用一些字符串格式来做我想做的事,但这不能正常工作。本质上,我需要一个可以存储在字典中的字符串值,因此当一个项目被选中时,我可以将文本框的 rtf 属性设置为该字典项目的值。
下面是我当前的格式字符串,我正在尝试将 rtf 属性设置为:
string s1 = string.Format(@"{{\rtf1\ansi \b Commit ID: \b0 {0}\line}}", entry.ID);
string s2 = string.Format(@"{{\b Author: \b0 {0}\line}}", entry.Author);
string s3 = string.Format(@"{{\b Date: \b0 {0}\line}}", entry.Date.ToString("d"));
string s4 = Environment.NewLine + Environment.NewLine + entry.Message;
contents = (s1 + s2 + s3 + s4);
然后设置我的富文本框的rtf属性:
LogContentsTB.Rtf = Logs[LogNamesLV.SelectedItems[0].Name];
其中 logs 是
这是第一项的正确输出形式,但没有其他内容出现。如果还有其他方法可以做到这一点,我愿意接受建议。
【问题讨论】:
-
您确定将
contents正确放入Logs吗? -
@ChetanRanpariya 是的,在我有一个常规文本框之前,我会输出该确切的字符串减去格式并尝试将其加粗。数据很好。
标签: c# richtextbox format-string