Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2011, 23:15   #1
alex_alpha
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 43
По умолчанию Изображение в ListView

Здравствуйте.
Подскажите, как вставить картинку в ListView (WPF)?
alex_alpha вне форума Ответить с цитированием
Старый 03.08.2011, 11:47   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Внимательно смотреть аналогичный вопрос Собственно ItemTemplate DataTemplate и т.д. все прекрасно описано в документации.
BOBAH13 вне форума Ответить с цитированием
Старый 03.08.2011, 12:43   #3
alex_alpha
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 43
По умолчанию

Я что-то упустил, у меня не работает:
Код HTML:
<ListView>
    <ListView.View>
        <GridView>
            <GridView.Columns>
                <GridViewColumn Header="Фамилия имя отчество" DisplayMemberBinding="{Binding FIO}" Width="150"/>
                <GridViewColumn Width="200">
                    <GridViewColumn.CellTemplate>
                        <DataTemplate>
                            <!-- здесь можно ставить все что угодно -->
                            <Image Name="imageFace" Source="{Binding Face}" />
                        </DataTemplate>
                    </GridViewColumn.CellTemplate>                                        
                </GridViewColumn>
            </GridView.Columns>
        </GridView>
    </ListView.View>
</ListView>
Код:
public partial class Window1 : Window
    {
        private ObservableCollection<Person> _pers = new ObservableCollection<Person>();
        public Window1()
        {
            InitializeComponent();
            _pers.Add(new Person ("Ivanov"));
            this.DataContext = _pers;
        }
    }
    public class Person
    {
        private string _fio;
        private Image _img;
        public string FIO
        {
            get { return _fio; }
            set { _fio = value; }
        }
        public Person(string fio)
        {
            _fio = fio;
        }
    }
В чем моя ошибка?
alex_alpha вне форума Ответить с цитированием
Старый 03.08.2011, 13:29   #4
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Код:
this.DataContext = _pers;
? Что это? Я не уверен, может все-таки
Код:
this.ListView.DataContext = _pers;
BOBAH13 вне форума Ответить с цитированием
Старый 03.08.2011, 13:36   #5
alex_alpha
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 43
По умолчанию

Ваш вариант тоже не работает...
alex_alpha вне форума Ответить с цитированием
Старый 03.08.2011, 13:41   #6
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от alex_alpha Посмотреть сообщение
Ваш вариант тоже не работает...
Прошу прощения, Можете разъяснить, что значит "тоже не работает..."? Ошибка на этапе компиляции? Или при debug/run? Чем больше информации вы предоставите, тем легче будет понять в чем кроется ошибка.
BOBAH13 вне форума Ответить с цитированием
Старый 03.08.2011, 13:51   #7
alex_alpha
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 43
По умолчанию

Запускается без ошибок, просто в ListView ничего не отображается.
Код HTML:
<ListView Name="LV">
            <ListView.View>
                <GridView>
                    <GridView.Columns>
                        <GridViewColumn Header="Фамилия имя отчество" DisplayMemberBinding="{Binding FIO}" Width="150"/>
                        <GridViewColumn Width="200">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <!-- здесь можно ставить все что угодно -->
                                    <Image Name="imageFace" Source="{Binding Face}" />
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
                    </GridView.Columns>
                </GridView>
            </ListView.View>
        </ListView>
Код:
public partial class Window1 : Window
    {
        private ObservableCollection<Person> _pers = new ObservableCollection<Person>();
        public Window1()
        {
            InitializeComponent();
            _pers.Add(new Person ("Ivanov"));
            this.LV.DataContext = _pers;
        }
    }
    public class Person
    {
        private string _fio;
        private Image _img;
        public string FIO
        {
            get { return _fio; }
            set { _fio = value; }
        }
        public Person(string fio)
        {
            FIO = fio;
        }
    }
alex_alpha вне форума Ответить с цитированием
Старый 03.08.2011, 14:07   #8
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

alex_alpha Вы хотите в <GridView.Columns> впихнуть изображения, а не в пункт списка? Я затрудняюсь ответить.
BOBAH13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как перетащить элемент ListView в другой ListView? Paul Hindenburg Компоненты Delphi 5 26.01.2013 11:35
[C# + WPF] ListView. Узнать выделена ли строка в нём. ListView.View == GridView. Casper-SC WPF, UWP, WinRT, XAML 2 12.08.2010 19:04
Фоновое изображение в ListView (вроде) Voody Компоненты Delphi 5 21.07.2010 13:42
Изображение _-Re@l-_ Общие вопросы Delphi 7 09.06.2010 09:23
Изображение Terran Работа с сетью в Delphi 2 08.02.2008 22:28