Содержимое ImageEx не меняется после изменения источника изображений - PullRequest
0 голосов
/ 26 февраля 2019

Я получаю изображение на FileOpenPicker в viewmodel следующим образом:

FileOpenPicker picker = new FileOpenPicker(); StorageFile image = await picker.PickSingleFileAsync();

, затем я устанавливаю значение Path свойство image на PathToImage свойство viewmodelимеет тип Uri (я использую реализацию INotifyPropertyChange по Template10):

public Uri PathToImage
{
    set { Set(ref _pathToImage, value); }
    get { return _pathToImage; }
}

Это свойство привязки к свойству Source ImageEx:

<Microsoft.Toolkit.Uwp.UI.Controls:ImageEx Source="{x:Bind ViewModel.PathToImage,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>

Я ожидал, что содержимое ImageEx изменится после того, как я установлю значение на
PathToImage, но этого не произойдет.Прежде всего я подумал, что это происходит из-за того, что типы свойств PathToImage и Source различны, но я установил путь к изображению Source, который находится в папке Assets.И изображение было просмотрено.Так что это не проблема в типах.Я понятия не имею, где может быть ошибка, которая не позволяет программе работать.Объясните мне, пожалуйста, как сделать ImageEx способным просматривать изображение после PathToImage изменений.

1 Ответ

0 голосов
/ 27 февраля 2019

Вы можете использовать прямой путь к изображению.Маг находится в Активах, поэтому вам нужно объединить схему ms-appx:///Assets uri с именем файла, как показано ниже.

private string _pathToImage = "ms-appx:///Assets/test.jpg";
public string PathToImage
{
    get { return _pathToImage; }
    set { Set(ref _pathToImage, value); }

}

Xaml

<mControl:ImageEx RelativePanel.AlignBottomWithPanel="True" Source="{x:Bind ViewModel.PathToImage,Mode=TwoWay}"/>

Изменить свойство

this.ViewModel.PathToImage =  "ms-appx:///Assets/test2.jpg";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...