小编Ter*_*ull的帖子

使用 ViewModel WPF 从 Codehind 执行方法

我已经在应用程序开发的中途放弃了 MVVM,只是为了推出这个应用程序。

我在后面的代码中编写了一个方法来更新数据库/数据网格等。

我的应用程序导航正在使用命令到 ViewModel 来触发一些事件,但除了一次初始化类之外,从不触及代码隐藏。

所以基本上我按下按钮一次,它使用默认的初始设置,但是一旦视图被初始化,我就不能再调用我的代码隐藏 Update() 方法。

如何从视图模型调用此代码隐藏方法?

谢谢!!

更新代码

 //Navigation ViewModel
//PaneVm.cs

public CommandExtension NewAssignmentCommand { get; set; }
    private void CreateCommands()
    {
        NewAssignmentCommand = new CommandExtension(NewAssignment, CanNewAssignment);
}
GlobalCommands.NewAssignmentCommand = NewAssignmentCommand;

private bool CanNewGroupAssignment(object obj)
    {
        return true;
    }

    private void NewGroupAssignment(object obj)
    {
        OnPropertyChanged("NewGroupAssignmentCommand");
    }


//MainVM.cs
// [Events]
    void _PaneVm_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
    {
        if (e.PropertyName == "NewGroupAssignmentCommand")
            WorkspaceVm.CurrentVm = new NewAssignmentsVm();
}


//NewAssignmentVm.cs
//Constructor
    public NewAssignmentsVm()
    {
        var rc = new RepositoryContext();

        _RoResearchers = …
Run Code Online (Sandbox Code Playgroud)

wpf view code-behind viewmodel

3
推荐指数
1
解决办法
1555
查看次数

标签 统计

code-behind ×1

view ×1

viewmodel ×1

wpf ×1