如何在辅助磁贴WP 8.1的中间设置文本

本文关键字:中间 置文本 WP | 更新日期: 2023-09-27 18:34:12

我正在尝试创建一个辅助磁贴,该磁贴将在其中显示字符串。我正在为 Windows Phone 8.1 构建应用程序。我有以下磁贴代码,但我希望文本位于应用程序中心:

SecondaryTile("TestTile",
               numDays + " days",
               tileActivationArguments,
               blankPic,
               TileSize.Square150x150);

有没有办法实现这一点或从文本构建图像以显示?

溶液:XAML

<Grid x:Name="TextGrid" Width="150" Height="150" Background="Red">
    <TextBlock x:Name="numDay" FontSize="36" />
</Grid>

C#

NumDay.Text = numDays + " days"
RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap();
await renderTargetBitmap.RenderAsync(TextGrid);

我使用此代码创建图像,然后将其设置为辅助磁贴中的背景图片。

如何在辅助磁贴WP 8.1的中间设置文本

创建带有图像的自定义磁贴只需以下步骤:

1) 渲染您的图像。 WriteableBitmap类可以呈现UIElement传递给它:

            WriteableBitmap wb = new WriteableBitmap(300, 300);
            wb.Render(myGrid);
            wb.Invalidate();

因此,需要从容器 + 控件等 UI 元素构造磁贴。在您的情况下,例如Grid(最大宽度)和对齐TextBlocks

2)获得此图像后,将其另存为PNG(以获得更好的质量)到文件夹中

"isostore:/Shared/ShellContent/"

否则,磁贴无法访问它。

3)现在您需要做的就是创建StandardTileData并将背景图像设置为新创建的图像。

您也可以在调试时下载和使用IsoStoreSpy。它可以显示手机的内部存储空间。因此,您可以看到图像是否以及如何渲染。