如何解决WPF:是否存在某种类似于HTML span元素的XAML标签?
| 来自ASP.NET的WPF东西令人困惑。我要做的只是在标签旁边放一个红色星号,以指示必填字段。玩弄东西,我发现这实际上可以解决问题:<TextBlock Grid.Row=\"6\" Height=\"28\" HorizontalAlignment=\"Left\" VerticalAlignment=\"Top\">
<Label Foreground=\"Red\" Content=\"*\" /><Label Content=\"Heavy Weight\" />
</TextBlock>
由于我只是想出了这一点,所以我不认为这是经验丰富的WPF开发人员会采用的学术路线。此外,此标记在星号和标签之间放置了大量空白。在HTML中,span元素将仅在其下一个同级元素旁边呈现。仅供参考,我尝试在标签中放置标签,但是VS2010一直在咆哮着“属性'content \'设置了不止一次”。
有任何想法吗?
解决方法
原因是您实际上将两个元素一个接一个地放置。您需要将它们放入容器中。
我最近做了一个带有红色星号的句子的示例代码:
<StackPanel Orientation=\"Horizontal\" Margin=\"5\" >
<TextBlock Text=\"Display name\"/>
<TextBlock Text=\"*\" Foreground=\"Red\" FontWeight=\"Bold\" />
<TextBlock Text=\":\"/>
</StackPanel>
在那里,所有内容都在ѭ2中,因此属性'content \'实际上将被设置一次(如果您未指定这样的组面板,则只需添加一个元素)
,这样的事情会更合适:
<TextBlock Grid.Row=\"6\" Height=\"28\" HorizontalAlignment=\"Left\" VerticalAlignment=\"Top\">
<Span Foreground=\"Red\">*</Span>Heavy Weight
</TextBlock>
这是TextBlock内容的概述,在这里更具体地说。
,另一种方法是
<TextBlock Grid.Row=\"6\" Height=\"28\" HorizontalAlignment=\"Left\" VerticalAlignment=\"Top\">
<Run Foreground=\"Red\" Text=\"*\" />
<Run Text=\"Heavy Weight\" />
</TextBlock>
顺便说一句
大马士革的解决方案增加了更多的UI元素。
使用CodeNaked的解决方案,很难对文本进行数据绑定。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。