Выгрузить картинку из БД и вставить ее в Button в WPF

В программе есть кнопка со стилем заданным через ресурсы App.xmal. В БД есть список компаний (Apple, Xiaomi...) с их логотипами, как вытащить от туда картинку и вставить ее в Image кнопки? Вот пример как должно это выглядеть


Ответы (1 шт):

Автор решения: HotNanny

По поводу кнопок реализовал через динамическую установку стилей.

Button btn = new Button
            {
                Style = (Style)FindResource("ButtonProduct"),
                Content = img,
            };

Изображение в кнопках сделал так: в самой БД не стал хранить изображения, а только ссылки к ним. Ссылки которые я получаю из БД храню в коллекции и перебираю их через цикл.

        DataBase dataBase = new DataBase();

        List<string> imgUri = new List<string>();

        dataBase.ReadImageFromDatabase(imgUri);

        for (int i = 0; i < dataBase.QuantityRecord(); i++)
        {
            System.Windows.Controls.Image img = new System.Windows.Controls.Image 
            { Source = new BitmapImage(new Uri(imgUri[i], UriKind.Absolute)) 
            { CreateOptions = BitmapCreateOptions.IgnoreImageCache } };

Запись значений в коллекцию из БД производится таким методом:

public void ReadImageFromDatabase(List<string> imgUri)
    {
        using (MySqlCommand command = new MySqlCommand("SELECT * FROM `brand`", GetConection()))
        {
            OpenConnection();

            MySqlDataReader reader = command.ExecuteReader();

            if (reader.HasRows)
            {
                while (reader.Read())
                {
                    imgUri.Add(Convert.ToString(reader.GetValue(2)));
                }
            }

            CloseConnection();
        }
    }
→ Ссылка