public FormattedString FormattedDescription
{
get
{
return new FormattedString
{
Spans =
{
new Span
{
Text = RoleName,
FontSize = 16,
FontAttributes = FontAttributes.Bold
},
new Span
{
Text = "/ " + ProjectRoleID + "/ "+Part + "/ "+Gender + "/ " + AgeRange
},
}
};
}
set
{
}
}
在上面的代码中,我想在第一行显示RoleName,在第二行显示其他详细信息。
答案 0 :(得分:6)
这是完全使用XAML的“清洁”解决方案。
xmlns:system="clr-namespace:System;assembly=netstandard"
这是系统名称空间,它包含所有系统类。
第二,在您希望的跨度中调用XAML中的Environment.NewLine,如下所示:
<Label.FormattedText>
<FormattedString>
<Span Text="First Text"/>
<Span Text=" "/>
<Span Text="Second Text"/>
<Span Text="{x:Static system:Environment.NewLine}"/>
<Span Text="Above is a new line"/>
</FormattedString>
</Label.FormattedText>
在这里,您有一种干净的方法来显示新行。
答案 1 :(得分:1)
您也可以使用XAML属性元素语法执行此操作:
<Label>
<Label.FormattedText>
<FormattedString>
<Span>
<Span.Text>
Line 1
Line 2
</Span.Text>
</Span>
</FormattedString>
</Label.FormattedText>
</Label>
答案 2 :(得分:0)
有时候用这个会更好
<StackLayout>
<Label>
<Label.FormattedText>
<FormattedString.Spans>
<Span Text="First Text"/>
</FormattedString.Spans>
</Label.FormattedText>
</Label>
<Label>
<Label.FormattedText>
<FormattedString.Spans>
<Span Text="Above is a new line"/>
</FormattedString.Spans>
</Label.FormattedText>
</Label>
</StackLayout>