繁体   English   中英

如何从Assets文件夹中显示XAML格式图像?

[英]How do I display a XAML format image from a Assets folder?

我正在尝试显示XAML格式的图像。 该图像位于我的Assets文件夹中,Build Action设置为content。

我想检索图像,但我尝试过的所有内容都失败了,包括ContentControl,Button和Image。 它不是显示图像,而是将图像的路径名称显示为文本。

  <ContentControl Content="Assets/Logos/ups.xaml" Width="100" Height="100"/>

我不确定你能做到这一点。 Xaml必须作为组件/可视树加载。

看看XamlReader

也许你可以创建自己的自定义控件来读取Uri源并处理内容。 或者也许有人已经创建了这样的控制。

<MyCustomXamlControl Source="Assets/Logos/ups.xaml" Width="100" Height="100"/>

代码看起来像这样:

private async void OnSourceChanged(Uri source)
{
    var file = await StorageFile.GetFileFromApplicationUriAsync(source);

    string xaml;

    using (var stream = await file.OpenReadAsync())
    using (var reader = new StreamReader(stream.AsStream()))
    {
        xaml = reader.ReadToEnd();
    }

    this.Content = XamlReader.Load(xaml);
}

注意:我没有测试过上面的内容。 这只是我放在一起的一个快速示例,请不要判断质量:)尝试摆弄以弄清楚如何将文件加载到string并将其提供给XamlReader

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM