Я делаю приложение UWP, и мне трудно загружать и привязывать изображение с помощью приложения UWP, как это сделать?Как загрузить и связать изображение, содержащееся в переносной библиотеке в приложении UWP?
Моя текущая структура:
MyApp.Model:
|
|-Models
|-MyModel.cs
|-MyModelContainer.cs
|-Resources
|-image1.png
|-image2.png
|-image3.png
Мои Xaml в другом проекте (выиграть 10 универсальное приложение и ссылку на этот портативный библиотеки классов.)
MyModelContainer
только одноэлементно контейнер, экземпляр IEnumerable<MyModel>
. Вот их содержание:
public class MyModel{
public String Name{get;set;}
public ??????? Icon {get;set;}
}
public static class MyModelContainer{
private static IEnumerable<MyModel> _myModelList;
public static IEnumerable<MyModel> MyModelList{get{
if(_myModelList==null){
Initialize();
}
return _myModelList;
}}
private static Initialize(){
_myModelList = new List<MyModel>() {
new MyModel(){
Name = "Model one"
Icon = ???????
}
};
}
}
На каком-то месте в моем XAML я получаю список MyModel
, в ItemsControl
:
<ItemsControl ItemsSource="{Binding MyModelListProperty}" >
<ItemsControl.ItemsPanel >
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate >
<Button Margin="10" MinHeight="50" MinWidth="40" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Image Source="{Binding Icon}" ></Image>
<TextBlock Grid.Row="1" Text="{Binding Name}" ></TextBlock>
</Grid>
</Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>^
Мои вопросы:
- Какой тип свойство, которое я должен использовать для привязки изображения (I hardt было
BitmapImage
? - Как мне создать это свойство? d
Icon = new BitmapImage(new Uri("ms-appx://MyApp.Model/Resources/image1.png"))
без везения, у меня нет загруженного изображения (и срабатывает событие ImageFailed). - Как связать это свойство с
<Image/>
?
Это для приложения UWP (Windows 10), а не WPF, а не win8.
спасибо.
EDIT
Вот структура папок
MyApp == AstroApp
MyApp.Model == AstroApp.Model
MyModel = AstroSign
MyModelContainer = AstroManager
Тест –
Archana
@LovetoCode И как создается ImageUrl? Является ли это строкой или URI, какой формат? – J4N
Его в строке. Или просто укажите url для свойства Source. BitmapImage будет создан автоматически. <Источник изображения = "{Значок привязки}">. Пусть значок «ms-appx: ///MyApp.Model/Resources/image1.png» – Archana