如何在MVVM Light中单击按钮后更改Label上的文本

时间:2014-12-11 18:23:06

标签: wpf view label viewmodel mvvm-light

我正在开发一个MVVM Light WPF项目。

我想在点击按钮时通过标签上的绑定来更新文本 不确定如何在视图模型中执行此操作。

下面是我的视图代码和视图模型代码。基本上,我想在点击“创建新项目”按钮后用ProjectStatus绑定更新标签,以说Project Created

任何帮助都将不胜感激。

这是我的代码:

<Button Content="Create New Project" Margin="0,0,3,0" Command="{Binding AddProjectCommand}" Width="243"/>
<Label Margin="20,0,0,0" Content="{Binding ProjectStatus, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="325"/>

以下是型号代码:

    public RelayCommand AddProjectCommand { get; set; }

    public ProjectConfigViewModel()
    {
        _projectStatus = "Project not created";
        this.AddProjectCommand = new RelayCommand(() => AddProject());
    }

    public void AddProject()
    {
        DatabaseInteraction.CreateProjectDb(_projName);
        isProjectLoaded = false;
    }

    public string ProjectStatus
    {
        get { return _projectStatus; }
        set
        {
            if (value != _projectStatus)
            {
                _projectStatus = value;

                RaisePropertyChanged("ProjectStatus");
            }
        }
    }

1 个答案:

答案 0 :(得分:1)

为什么不这样呢?

public void AddProject()
{
    DatabaseInteraction.CreateProjectDb(_projName);
    isProjectLoaded = false;
    ProjectStatus = "Project Created";
}