#windows-phone-7 #silverlight-4.0 #button #background-image
#windows-phone-7 #silverlight-4.0 #кнопка #фоновое изображение
Вопрос:
Я хотел бы знать, как динамически добавлять изображение к кнопке в коде, а не в xaml. Кто-то предложил действовать следующим образом
ImageBrush brush = new ImageBrush();
brush.ImageSource = new BitmapImage(new Uri(@"Images/myImage.png", UriKind.Relative));
AlphabetButton.Background = brush;
но BitmapImage не обнаруживается intellisense, хотя я могу найти BitConvertor и Bitmapcache.
Если это не тот метод, как еще я мог бы установить фоновые изображения
Ответ №1:
Код:
ImageBrush background = new ImageBrush();
background.ImageSource = new System.Windows.Media.Imaging.BitmapImage(new Uri(@"SplashScreenImage.jpg", UriKind.Relative));
Button1.Background = background;
Работает, как ожидалось. BitmapImage находится в системе.Windows.dll который уже должен быть в вашем проекте WP7.
Комментарии:
1. спасибо .. 🙂 Я добавил using.windows.media.imaging в пространство имен. Теперь можно получить доступ к BitmapImage.
Ответ №2:
Я считаю, что гораздо проще и проще просто поместить элемент управления изображением за кнопкой, которую вы хотите отобразить, и оставить кнопку с прозрачным фоном.
Это устраняет необходимость создания отдельной кисти для кнопки, а также делает ее более расширяемой, если вы хотите добавить тест поверх изображения. ИМХО
Комментарии:
1. Спасибо. Я довольно новичок в WP, Silverlight и C #. Итак, не могли бы вы дать немного больше помощи по управлению изображениями. Да, я каждый раз создаю отдельную кисть, и это действительно странно.