0

基本上我正在尝试制作一个 UWP 应用程序来在开始菜单上创建自定义磁贴。当平铺图像来自资产文件夹时,SecondaryTile 正在工作。

Uri square150x150Logo = new Uri("ms-appx:///Assets/square150x150Tile-sdk.png");
Uri wide310x150Logo = new Uri("ms-appx:///Assets/wide310x150Tile-sdk.png");
Uri square310x310Logo = new Uri("ms-appx:///Assets/square310x310Tile-sdk.png");
Uri square30x30Logo = new Uri("ms-appx:///Assets/square30x30Tile-sdk.png");

但我在 ApplicationData 文件夹中有图像并尝试使用如下路径:

Uri square150x150Logo = new Uri(Path.Combine(ApplicationData.Current.TemporaryFolder.Path, "ImageSquare.png"));
Uri wide310x150Logo = new Uri(Path.Combine(ApplicationData.Current.TemporaryFolder.Path, "ImageWide.png"));
Uri square310x310Logo = new Uri(Path.Combine(ApplicationData.Current.TemporaryFolder.Path, "ImageLarge.png"));
Uri square30x30Logo = new Uri(Path.Combine(ApplicationData.Current.TemporaryFolder.Path, "ImageTiny.png"));

但是这样应用程序就崩溃了。调试器也不工作。有什么解决办法吗?

4

2 回答 2

0

OK 终于想通了。除了安德鲁的回答,我不得不改为使用LocalState文件夹而不是TempState. 安德鲁指导以正确的方式使用ms-appdata,但由于某种原因ms-appdata:///temp/返回错误。但使用ms-appdata:///Local/解决了这个问题。

于 2018-03-28T04:43:15.267 回答
0

要引用应用程序数据文件,您应该使用ms-appdata:///.

调用TemporaryFolder.Path将返回绝对文件路径,C:\不允许在辅助图块上使用。

所以你更新的代码将是......

Uri square150x150Logo = new Uri("ms-appdata:///temp/ImageSquare.png"));
于 2018-03-26T20:38:34.003 回答