Windows Phone 8.1 : 将远程图像添加到 BottomAppBar 或 AppBarButton

Windows Phone 8.1 : Add remote Image to BottomAppBar or AppBarButton

我想将远程图像添加到应用栏按钮中。 我的图片是这样的 url http://2.bp.blogspot.com/-yEbb9_qp-jg/U8-KGeZAy3I/AAAAAAAAB0U/m91Bv1jPAQI/s1600/india+win+at+lords.jpg 我想从后端将它绑定到 appbarbutton。我的后端代码是 propic.UriSource = new Uri("http://2.bp.blogspot.com/-yEbb9_qp-jg/U8-KGeZAy3I/AAAAAAAAB0U/m91Bv1jPAQI/s1600/india+win+at+lords.jpg"); 但是我的后端代码不工作...有人请告诉我该怎么做

下面是我的 Xaml 代码

            <AppBarButton Label="Ride Now">
                <AppBarButton.Icon>

                    <BitmapIcon x:Name="propic" Height="100" Width="100"/>
                </AppBarButton.Icon>
            </AppBarButton>
            <CommandBar.SecondaryCommands>
                <AppBarButton Label="Ride Now">
                <AppBarButton.Icon>

                    <BitmapIcon x:Name="propic12" Height="100" Width="100"/>
                </AppBarButton.Icon>   
                </AppBarButton>
                <AppBarButton Label="x" Icon="Admin" />
                </CommandBar.SecondaryCommands>
        </CommandBar>
    </Page.BottomAppBar>

您不能为 AppBar Images 提供绝对 Uri,AppBarButtons 不能那样工作。

您可以下载图像,将其保存到本地存储并作为图像从 there.Don 中读取,这可能会起作用。请不要忘记您的图像需要遵循大小调整格式。

您可以在此处获得更多信息

https://msdn.microsoft.com/en-us/library/windows/apps/ff431806%28v=vs.105%29.aspx

这是对您有帮助的代码。

using (var htc = new HttpClient())
{
    var file = await htc.GetStreamAsync("Your image url");
    if (!isoStore.FileExists("shared/shellcontent/appbarimage.png"))
    {
        using (IsolatedStorageFileStream fileStream = isoStore.OpenFile("shared/shellcontent/appbarimage.png", FileMode.Create))
        {
            await file.CopyToAsync(fileStream);
        }
    }
}

propic.UriSource = new Uri("isostore:/Shared/ShellContent/appbarimage.png",UriKind.Relative);