Невозможно привязать фон к кнопке в Windows Phone 7 - PullRequest
0 голосов
/ 25 февраля 2012

Я пытаюсь привязать свойство Background стандартной кнопки к свойству, которое есть в моей модели представления, например:

<Button Height="72" HorizontalAlignment="Left" Margin="8,515,0,0" x:Name="BtnReset" VerticalAlignment="Top" Width="218" Foreground="White" BorderThickness="0">
    <Button.Background>
        <ImageBrush ImageSource="{Binding ResetBtnImage}" />
    </Button.Background>
</Button>

Свойство выглядит следующим образом:

    private ImageSource _resetBtnImage;

    /// <summary>
    /// Gets or sets the reset button image.
    /// </summary>
    /// <value>
    /// The reset button image.
    /// </value>
    public ImageSource ResetBtnImage
    {
        get { return _resetBtnImage; }
        set
        {
            _resetBtnImage = value;
            RaisePropertyChanged("ResetBtnImage");
        }
    }

И затем я установил его в коде:

ResetBtnImage = new BitmapImage(new Uri(ResetBtnInActiveImage, UriKind.Relative));

Однако кнопка не появляется вообще, когда я пытаюсь запустить приложение на телефоне или эмуляторе.Я что-то здесь не так делаю?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 25 февраля 2012

Вот как я бы это сделал:

XAML:

<Button Content="Test" Background="{Binding MyImage}"/>

ViewModel:

private ImageBrush _myImage;
public ImageBrush MyImage
{
  get { return _myImage; }
  set
  {
    if (_myImage.Equals(value))
      return;
    _myImage = value;
    RaisePropertyChanged("MyImage");
  }
}

 _myImage = new ImageBrush();
 _myImage.ImageSource = new BitmapImage(new Uri("Background.png", UriKind.Relative));
0 голосов
/ 25 февраля 2012

Две идеи:

  1. Возможно, ваш образ неправильно упакован и развернут с приложением. Убедитесь, что путь к изображению указан правильно и для параметра «Действие построения» задано значение «Содержимое».
  2. Привязка данных может не работать. Проверьте наличие сообщений об ошибках в окне вывода отладки в Visual Studio, которые могут указывать на потенциальные проблемы с привязкой данных.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...