繁体   English   中英

如何使用 MvvmCross 在 WPF 应用程序中获取命令行参数?

[英]How to get command line parameters in a WPF application using MvvmCross?

我正在尝试使用 MvvmCross 将命令行参数传递给我的 WPF 应用程序。
我想访问 MainViewModel 中的参数。

类似于您如何在App.xaml.cs中覆盖 OnStartup() 方法(或为 Startup 事件创建事件处理程序)并在那里处理您的参数。

我尝试从MvxApplication<object>继承我的App.cs并使用MvxNavigationViewModel<object>作为 MainViewModel 基础 class ,如下所示:

public class App : MvxApplication<object>
{
    public override void Initialize()
    {
        #region BulkRegistration

        CreatableTypes()
            .EndingWith("Service")
            .AsInterfaces()
            .RegisterAsLazySingleton();

        #endregion

        #region AppStartRegistration

        RegisterAppStart<MainViewModel, object>();

        #endregion
    }
}

我的 MainViewModel 中的Prepare(object parameter)方法永远不会被调用。

public class MainViewModel : MvxNavigationViewModel<object>
{
    // ...

    public override void Prepare(object parameter)
    {
        // do stuff with parameter
    }
}

我该如何正确地做到这一点?

无论您是在 ViewModel 中还是在任何地方,您都应该能够使用以下内容。

var args = Envrionment.GetCommandLineArgs();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM