添加后台服务是否启动功能

This commit is contained in:
2025-07-07 21:15:27 +08:00
parent c473c500d8
commit 308c50fe15
7 changed files with 141 additions and 2 deletions

View File

@@ -0,0 +1,22 @@
<controls:ContentDialog x:Class="PMSWPF.Views.Dialogs.IsActiveDialog"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:controls="http://schemas.inkore.net/lib/ui/wpf/modern"
xmlns:vm="clr-namespace:PMSWPF.ViewModels.Dialogs"
mc:Ignorable="d"
d:DataContext="{d:DesignInstance vm:IsActiveDialogViewModel}"
Title="修改激活状态"
PrimaryButtonText="确定"
SecondaryButtonText="取消"
PrimaryButtonClick="ContentDialog_PrimaryButtonClick"
SecondaryButtonClick="ContentDialog_SecondaryButtonClick">
<Grid>
<StackPanel Orientation="Vertical" Margin="10">
<TextBlock Text="请选择新的激活状态:" Margin="0,0,0,10" FontWeight="Bold"/>
<RadioButton Content="启用" IsChecked="{Binding SelectedIsActive, Mode=TwoWay, Converter={StaticResource NullableBooleanConverter}, ConverterParameter=True}" Command="{Binding SelectIsActiveCommand}" CommandParameter="True" Margin="0,0,0,5"/>
<RadioButton Content="停用" IsChecked="{Binding SelectedIsActive, Mode=TwoWay, Converter={StaticResource NullableBooleanConverter}, ConverterParameter=False}" Command="{Binding SelectIsActiveCommand}" CommandParameter="False"/>
</StackPanel>
</Grid>
</controls:ContentDialog>

View File

@@ -0,0 +1,33 @@
using System.Windows;
using iNKORE.UI.WPF.Modern.Controls;
using PMSWPF.ViewModels.Dialogs;
namespace PMSWPF.Views.Dialogs;
public partial class IsActiveDialog : ContentDialog
{
public IsActiveDialogViewModel ViewModel { get; }
public IsActiveDialog(IsActiveDialogViewModel viewModel)
{
InitializeComponent();
ViewModel = viewModel;
DataContext = ViewModel;
}
private void ContentDialog_PrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
{
// 确认按钮点击时ViewModel.SelectedIsActive 已经通过绑定更新
// 如果用户没有选择任何选项,可以阻止关闭对话框
if (!ViewModel.SelectedIsActive.HasValue)
{
args.Cancel = true;
}
}
private void ContentDialog_SecondaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
{
// 取消按钮点击时,将 SelectedIsActive 设置为 null
ViewModel.SelectedIsActive = null;
}
}