Не могу изменить значение viewmodel на пустое - PullRequest
0 голосов
/ 17 апреля 2020

У меня проблема с моей ViewModel в приложении WPF. Он изменяет свойство PullingOrganization, когда значение не пустое, но когда оно пустое, оно сохраняет первоначальное значение. Он достигает установщика, но по какой-то причине значение не обновляется.

Страница XAML:

<Label Grid.Row="0" Grid.Column="0" Content="Naam van organisatie" Style="{StaticResource LabelInputField}"/>
                    <TextBox Grid.Row="0" Grid.Column="1" Name="inputOrganizationName" Text="{Binding OrganizationName}" Margin="0 5"/>

Спецификация c Класс viewModel:

public class OrganizationAddWindowModel : BaseViewModel
    {
        private PullingOrganization organization;

        public string OrganizationName
        {
            get { return organization.Name; }
            set
            {
                if (value != organization.Name)
                {
                    organization.Name = value;
                    OnPropertyChange("OrganizationName");
                }
            }
        }
        public string OrganizationLogo
        {
            get { return organization.Logo; }
            set
            {
                if (value != organization.Logo)
                {
                    organization.Logo = value;
                    OnPropertyChange("OrganizationLogo");
                }
            }
        }

        public PullingOrganization Organization 
        {
            get { return this.organization; }
        }

        public OrganizationAddWindowModel()
        {
            WindowTitle = "Truckpulling - Nieuwe organisatie";
            organization = new PullingOrganization();
        }
    }

Общий вид модели класса.

 public class BaseViewModel : INotifyPropertyChanged
    {
        public event PropertyChangedEventHandler PropertyChanged;
        protected void OnPropertyChange(string propertyName)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
                //PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }

        private string windowTitle;

        public string WindowTitle
        {
            get { return windowTitle; }
            set
            {
                if(windowTitle != value)
                {
                    windowTitle = value;
                    OnPropertyChange("WindowTitle");
                }
            }
        }

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