Ниже приведен класс, который преобразует строку (поступающую из базы данных сервера sql) в изображение. Как я могу вызвать функцию преобразования из элемента управления XAML Image, чтобы при открытии дочерней формы я видел изображение отдельного сотрудника в зависимости от того, какая строка была выбрана в таблице данных основных форм. По сути, у меня вопрос - могу ли я вызвать функцию конвертера, которая будет переводить текст фотографии в изображение во время выполнения ?. Я пробовал что-то вроде этого ... Раньше я использовал для этого код, но я хотел бы сделать это напрямую из XAML.
XAML: -
<Image x:Name="EmpPic"
Source=Text="{Binding Photo, Mode=TwoWay, Converter={StaticResource PhotoConverter}"
HorizontalAlignment="Center"
Width="165"
Height="160"
Margin="2,2,2,2"/>
Код:-
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.IO;
using System.Windows.Media.Imaging;
using System.Windows.Data;
namespace SL3Demo.Utility
{
//public class PhotoConverter : IValueConverter
//{
// //public BitmapImage ConvertBase64ToImage(string base64String)
// //{
// // //Convert Base64 String to byte[]
// // byte[] imageBytes = Convert.FromBase64String(base64String);
// // BitmapImage bi = new BitmapImage();
// // bi.SetSource(new MemoryStream(imageBytes));
// // return bi;
// //}
//}
public class PhotoConverter
{
public BitmapImage PhotoConvert(string value)
{
byte[] imageBytes = Convert.FromBase64String(value.ToString());
BitmapImage bi = new BitmapImage();
bi.SetSource(new MemoryStream(imageBytes));
return bi;
}
}
}