TextBlock Text Property только для Binding, даже для Binding Mode, установленного на TwoWay - PullRequest
0 голосов
/ 01 мая 2018

Исходный код:

class Cons
{
    public Cons()
    {
        BaseDir = AppDomain.CurrentDomain.BaseDirectory;
        SetProperty();
    }
    private void SetProperty()
    {
        NowPlaying = "Hello";
    }
    public string NowPlaying{get; set; }
}
public partial class MainWindow
{
    Cons Resources = new Cons()
    public MainWindow()
    {
         txbl.DataContext = Resources;
         Resources.NowPlaying = "NoHello";
    }
}

И текстовый блок <Textblock x:Name="txbl" Text="{Binding NowPlaying, Mode=TwoWay}"/> Когда я установил свойство NowPlaying в конструкторе MainWindow, свойство изменилось на «NoHello», но текстовое свойство TextBlock все равно Здравствуйте, даже если я установил режим связывания = TwoWay

Изображение, которое я получаю при возникновении проблемы enter image description here

1 Ответ

0 голосов
/ 01 мая 2018

Код, который вы упомянули, работает правильно. Текстовый блок показывает новое значение «NoHello». Но если вы хотите обновить значение свойства NowPlaying после загрузки вашего текстового блока, внедрите INotifyPropertyChanged в классе Cons и вызовите PropertyChanged в установщике свойства NowPlaying.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...