/// <summary> /// HyperVisorLaunchTypeを設定する /// </summary> /// <param name="value"></param> /// <returns></returns> public Task SetHyperVisorLaunchType(HyperVisorLaunchType value) { return Task.Run(() => { _currentLoaderObject.SetIntegerElement((uint)value, BcdOsLoaderIntegerHypervisorLaunchType); }); }
/// <summary> /// インスタンスを初期化する /// </summary> public SwitchViewModel(HyperVisorLaunchType defaultLaunchType) { _defaultLaunchType = defaultLaunchType; // 選択中のHyperVisorLaunchTypeの状態を表すプロパティ LaunchType = new ReactiveProperty <HyperVisorLaunchType>(defaultLaunchType); // HyperVisorLaunchTypeを更新するコマンド // HyperVisorLaunchTypeを現在値が変更された場合に実行可能とする UpdateCommand = LaunchType.Select(s => s != _defaultLaunchType).ToReactiveCommand(); UpdateCommand.Subscribe(_ => { MessengerInstance.Send(new NavigationMessage(NavigationDestination.ProcessPage, new UpdateViewModel(LaunchType.Value))); }); }
/// <summary> /// インスタンスを初期化する /// </summary> /// <param name="launchType"></param> public UpdateViewModel(HyperVisorLaunchType launchType) : base(Properties.Resources.UpdatingMessage) { _launchType = launchType; }