Отображение изображений на основе значения столбца в WPat datagrid

У меня есть datatable queried из таблицы SQL-сервера.
Таблица данных содержит только один столбец, она будет иметь номера от 0 до 9. Мне нужно отобразить это в WPat datagrid. Я сделал отображение как обычный datagrid. Но мне нужно отобразить отдельное изображение и текст для этого конкретного номера в этом столбце.
Возможно ли, что это будет Datagrid?

2
добавлено
Просмотры: 1

1 ответы

Use DataGridTemplateColumn and bind it using an IValueConverter that will transform your int into an ImageSource

Вот небольшой рабочий пример:

<�Сильный> MainWindow.xaml



    
        
    

    

        
            
                
                    
                        
                            
                            
                            
                    
                    
                
            
        

        0
        1

    


<�Сильный> MainWindow.xaml.cs

using System;
using System.Windows;
using System.Windows.Data;
using System.Windows.Media;
using System.Windows.Media.Imaging;

namespace StackOverflow
{
    /// 
/// Interaction logic for MainWindow.xaml ///
 
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
    }

    public class IntToImageConverter : IValueConverter
    {

        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            ImageSource result = null;
            var intValue = (int)value;
            switch (intValue)
            {
                case 0:
                    {
                        result = new BitmapImage(new Uri(@"your_path_to_image_0"));
                        break;
                    }

                case 1:
                    {
                        result = new BitmapImage(new Uri(@"your_path_to_image_1"));
                        break;
                    }
            }
            return result;
        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }
}
5
добавлено
где я должен загружать datatable (запрашиваемый с сервера базы данных) в datagrid?
добавлено автор Olivarsham, источник
Я вернулся с сервера db. Как подключить это к datagrid ??
добавлено автор Olivarsham, источник
Я отобразил это как текстовый столбец, т. Е. Только что связанный с Itemssource datagrid. поэтому только я упомянул «Я сделал отображение как обычный datagrid». Мне нужно знать, как это создать в коде.
добавлено автор Olivarsham, источник
Ну, это еще один вопрос :) Вы не знаете, как извлекать данные из таблицы и привязывать ее к DataGrid? Пример, который я вам дал, - это простой DataGrid без привязки, только чтобы проиллюстрировать, как заменить номер изображением, которое было вашим первоначальным вопросом
добавлено автор Sisyphe, источник
В какой структуре данных вы его получили? Вы должны открыть другой вопрос по этому вопросу, это не имеет никакого отношения к исходному вопросу. Более того, это было похоже на проблему, которую вы уже решили, поскольку вы упомянули: «Я сделал отображение как обычный datagrid»
добавлено автор Sisyphe, источник
Вам просто нужно установить правильный ItemsSource в DataGrid. Связывание уже управляется в Cell DataTemplate.
добавлено автор Sisyphe, источник