TransWikia.com

Вывести Image в GridControl DevExpress

Stack Overflow на русском Asked by Ari100krat on November 5, 2021

При отображении данных в GridControl столкнулся с такой сложностью:
Имеется свойство в в модели для получения изображения из byte[]:

        public Image ImgPhoto
        {
            get
            {
                MemoryStream ms = new MemoryStream(this.Photo.Data);
                Image image = Image.FromStream(ms);
                return image;
            }
        }

Так вот, как мне вывести это изображение в GridControl. Буду благодарен за любую помощь.

Мне подсказали, что надо использовать BitmapImage вместо Image. Вдруг кому-то пригодится.

public BitmapImage ImgPhoto
        {
            get
            {
                MemoryStream stream = new MemoryStream();
                stream.Write(this.Photo.Data, 0, this.Photo.Data.Length);
                stream.Position = 0;
                System.Drawing.Image img = System.Drawing.Image.FromStream(stream);
                BitmapImage returnImage = new BitmapImage();
                returnImage.BeginInit();
                MemoryStream ms = new MemoryStream();
                img.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
                ms.Seek(0, SeekOrigin.Begin);
                returnImage.StreamSource = ms;
                returnImage.EndInit();

                return returnImage;
            }
        }

One Answer

Если картинку нужно вывести в столбце таблицы, то попробуйте сделать это следующим образом:

<dxg:GridControl ...>
    <dxg:GridColumn Header="Изображение"
                            Binding="{Binding BitmapImageData}">
        <dxg:GridColumn.CellTemplate>
            <DataTemplate>
                <dxe:ImageEdit ShowMenuMode="Hover"  
                            Source="{Binding Value}" 
                            MaxHeight="500" 
                            MaxWidth="{Binding Width, ElementName=EditParamView}"/>
            </DataTemplate>
        </dxg:GridColumn.CellTemplate>
    </dxg:GridColumn>
</dxg:GridControl>

Answered by Nikolay on November 5, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP