我有UWP应用程序,其中我有带url源的图像。
这是xaml代码:
<Image x:Name="Image" HorizontalAlignment="Left" Height="200" Width="200" Tapped="Image_Tapped">
<Image.Source>
<BitmapImage UriSource="{Binding data.thumbnail}" />
</Image.Source>
</Image>
我创建了Tapped事件处理程序
这是代码
private void Image_Tapped(object sender, TappedRoutedEventArgs e)
{
var source = Image.SourceProperty.ToString();
Debug.WriteLine(source);
}
但似乎不对。
如何在浏览器中获取ImageSource并启动此网址(图片来源为网址)?
答案 0 :(得分:0)
您需要Launcher
课程。
private async void Image_Tapped(object sender, TappedRoutedEventArgs e)
{
if (((Image)sender).Source is BitmapImage bitmapImage)
{
var uri = bitmapImage.UriSource;
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uri);
if (success)
{
// URI launched
}
else
{
// URI launch failed
}
}
}
另请注意,因为您已经指定了图像大小(即 200x200 )以节省一些内存,所以您可能希望将图像解码为渲染大小。如果直接使用Image.Source
,则不必执行此操作。
<BitmapImage DecodePixelWidth="200" DecodePixelHeight="200" ... />