【问题标题】:Bind <TextBlock> with collection to create dynamic <run> tags将 <TextBlock> 与集合绑定以创建动态 <run> 标签
【发布时间】:2015-05-26 04:50:36
【问题描述】:
我是 Silverlight 的新手。我正在尝试将文本从视图模型动态加载到 TextBlock 中,并突出显示特定的单词。
我能想到的唯一逻辑是用我想要突出显示的单词拆分字符串,并在<TextBlock></TextBlock> 中使用运行标签加载每个拆分,然后更改要突出显示的<run/> 标签的样式。
但我不知道该怎么做。
任何代码 sn-p 或逻辑或想法或方向都会有所帮助。
【问题讨论】:
标签:
c#
wpf
silverlight
silverlight-5.0
textblock
【解决方案1】:
未经测试:
<TextBlock x:Name="SampleTextBlock" />
设置文本块:
void SetSampleTextBlock(string[] words)
{
SampleTextBlock.Inlines.Clear();
foreach (var word in words)
{
var run = new Run { Text = word };
if (word == "octopus")
{
run.FontWeight = FontWeights.UltraBold;
}
SampleTextBlock.Inlines.Add(run);
}
}