我正在为我的瓷砖使用Flip Template。在MSDN页面上,文本被视为包装,并且尺寸较小。
这不能代表我在实时图块中看到的行为。我可以在Wide live tile上获得最多3行大文本。文字没有包装。这种情况发生在仿真器的所有不同屏幕尺寸上。令人沮丧的是,我可以在Medium live tile上获得4行文本,但是额外的内容行太长而无法适应那里,所以我不包含它。
我使用计划任务定期更新我的磁贴:
Earthquake latest = quakes.First();
newTileData = new FlipTileData
{
Title = String.Format(AppResources.LiveTileTitleFormat, quakes.Count),
BackTitle = String.Format(AppResources.LiveTileTitleFormat, quakes.Count),
BackContent = String.Format(AppResources.LiveTileBackContentFormat, latest.FormattedMagnitude, latest.FormattedDepth),
WideBackContent = String.Format(AppResources.LiveTileWideBackContentFormat, latest.FormattedMagnitude, latest.FormattedDepth, latest.RelativeLocation)
};
ShellTile tileToFind = ShellTile.ActiveTiles.First();
if (tileToFind != null)
{
tileToFind.Update(newTileData);
}
左侧的模拟器试图显示4行。 右侧的模拟器显示文本未包装。
那么,有没有办法强制第四行,或指定较小的字体大小,或两者兼而有之?我怀疑没有,MSDN文章只是显示Windows 8(不是WP8)实时图块。
答案 0 :(得分:4)
无法在WP8磁贴上调整文本大小。您可以通过创建图像并将其放置在图块上来伪造它:
使用此图片实现图块生成。
private WriteableBitmap RenderControlAsImage(UserControl element)
{
element.UpdateLayout();
element.Measure(new Size(element.Width, element.Height));
element.Arrange(new Rect(0, 0, element.Width, element.Height));
return new WriteableBitmap(element, null);
}