2016-10-26 3 views
0

У меня есть проблемы с загрузкой изображений (только на этом компьютере, на другом его ки)Image оленью кожу нагрузка на Xaml

Im попробовал несколько способов поместить изображение

<Image 
     MinWidth="190" 
     Stretch="Fill" 
     MinHeight="190"  
     Source="{Binding ImagePath, Converter={StaticResource UriToImageConverter}}"> 
     <!--If you use my way in answer you need replace Source like this--> 
     Source="{Binding Image}"><!--Bitmapimage property in model--> 
</Image> 

Its работает только если я поместите путь как «ms-appx», но в цель мне нужно использовать «привязывание» его работ на других ПК без каких-либо проблем, но здесь у меня есть «прозрачное» изображение на странице

+2

См [права доступа к файлу ] (https://msdn.microsoft.com/en-us/windows/uwp/files/file-access-permissions). – Clemens

+0

Пользователь выбирает изображение, и я помещаю 'StorageFile.Path' в 'ImagePath' – SmiLe

+0

Вы должны прочитать файл изображения и использовать «BitmpaImage» в качестве источника изображения. – tao

ответ

0

Хорошо, я просто поместил изображения в StorageFile и скопировал его в местную папку и оттуда оттуда запустил в мою опору Model erty

До:

this.collageimages = await OpenPicker.PickMultipleFilesAsync(); 
for (var i = 0; i < this.collageimages.Count; i++) 
{ 
    var stream = await collageimages[i].OpenAsync(FileAccessMode.Read); 
    this.image = new BitmapImage(); 
    await this.image.SetSourceAsync(stream); 
} 

После:

this.collageimages = await OpenPicker.PickMultipleFilesAsync(); 
for (var i = 0; i < this.collageimages.Count; i++) 
{ 
    await this.collageimages[i].CopyAsync(ApplicationData.Current.LocalFolder, "collageImage_"+i+"", NameCollisionOption.ReplaceExisting); 
    var tempStorage = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appdata:///local/collageImage_"+i+"")); 
    var stream = await tempStorage.OpenAsync(FileAccessMode.Read); 
    this.image = new BitmapImage(); 
    await this.image.SetSourceAsync(stream); 
} 

Я не утверждаю, что лучший ответ, если вы знаете лучший способ, пожалуйста, напишите его

+0

Также вы можете использовать [Токены] (https://msdn.microsoft.com/en-us/окно/UWP/файлы/как к дорожкам, недавно используемым файлы-и-папка) – SmiLe