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

时间:2016-02-11 21:24:38

标签: c# windows-phone-8.1 windows-phone tiles

我正在尝试创建一个将在其中显示字符串的辅助磁贴。我正在为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);

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

1 个答案:

答案 0 :(得分:0)

通过以下步骤创建带图像的自定义图块:

1)渲染图像。 WriteableBitmap类可以将UIElement传递给它:

            WriteableBitmap wb = new WriteableBitmap(300, 300);

            wb.Render(myGrid);

            wb.Invalidate();

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

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

  

&#34; isostore:/共享/ ShellContent /&#34;

否则你的瓷砖无法访问它。

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

您还可以在调试时下载并使用 IsoStoreSpy 。它可以显示您手机的内部存储空间。因此,您可以查看图像是否以及如何呈现。