Связывание динамических объектов wpf - PullRequest
0 голосов
/ 18 ноября 2011

Я пытаюсь связать пользовательский объект, который можно динамически изменить на смещенный элемент.

У моего window.xaml на данный момент есть это:

<StackPanel Height="310" HorizontalAlignment="Left" Margin="12,12,0,0" Name="Configuration_stackPanel" VerticalAlignment="Top" Width="264" Grid.Column="1">
<Label Content="{Binding Path=Client}" Height="22" HorizontalAlignment="Left" Margin="20,0,0,0" Name="Client" VerticalAlignment="Top" />
</StackPanel>

В window.xaml.cs, у меня есть член,

public CustomObject B;

У CustomObject есть клиентский элемент. B.Client, получает имя клиента (которое является строкой) среди прочего

Что я должен сделать, чтобы отобразить B.Client и изменить его при изменении в коде.

т.е.: если в коде я делаю B.Client = "foo", то отображается foo и если я сделаю B.Client = "bar", вместо foo отображается bar.

Заранее спасибо
F

1 Ответ

2 голосов
/ 18 ноября 2011

Ваш класс CustomObject должен реализовывать интерфейс INotifyPropertyChanged:

public class CustomObject : INotifyPropertyChanged
{

    private string _client;
    public string Client
    {
        get { return _client; }
        set
        {
            _client = value;
            OnPropertyChanged("Client");
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;

    protected virtual void OnPropertyChanged(string propertyName)
    {
        var handler = PropertyChanged;
        if (handler != null)
        handler(this, new PropertyChangedEventArgs(propertyName));
    }

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