refactor: 可自定义3~5星招募时间 (#11019)

This commit is contained in:
uye
2024-11-02 20:35:18 +08:00
committed by GitHub
parent 9af2121093
commit 94febb6987
7 changed files with 346 additions and 190 deletions

View File

@@ -98,8 +98,6 @@ namespace MaaWpfGui.Constants
public const string ChooseLevel5 = "Recruit.ChooseLevel5";
public const string ChooseLevel6 = "Recruit.ChooseLevel6";
public const string AutoSetTime = "Recruit.AutoSetTime";
public const string Level3UseShortTime = "Recruit.IsLevel3UseShortTime";
public const string Level3UseShortTime2 = "Recruit.IsLevel3UseShortTime2";
public const string RecruitmentShowPotential = "Recruit.ShowPotential";
public const string DormThreshold = "Infrast.DormThreshold";
@@ -154,12 +152,13 @@ namespace MaaWpfGui.Constants
public const string RefreshLevel3 = "AutoRecruit.RefreshLevel3";
public const string ForceRefresh = "AutoRecruit.ForceRefresh";
public const string SelectExtraTags = "AutoRecruit.SelectExtraTags";
public const string IsLevel3UseShortTime = "AutoRecruit.IsLevel3UseShortTime";
public const string IsLevel3UseShortTime2 = "AutoRecruit.IsLevel3UseShortTime2";
public const string NotChooseLevel1 = "AutoRecruit.NotChooseLevel1";
public const string RecruitChooseLevel3 = "AutoRecruit.ChooseLevel3";
public const string ChooseLevel3Time = "AutoRecruit.ChooseLevel3Time";
public const string RecruitChooseLevel4 = "AutoRecruit.ChooseLevel4";
public const string ChooseLevel4Time = "AutoRecruit.ChooseLevel4Time";
public const string RecruitChooseLevel5 = "AutoRecruit.ChooseLevel5";
public const string ChooseLevel5Time = "AutoRecruit.ChooseLevel5Time";
public const string LastCreditFightTaskTime = "Visit.LastCreditFightTaskTime";
public const string CreditFightTaskEnabled = "Visit.CreditFightTaskEnabled";

View File

@@ -2208,8 +2208,9 @@ namespace MaaWpfGui.Main
/// </list>
/// </param>
/// <param name="skipRobot">是否在识别到小车词条时跳过。</param>
/// <param name="isLevel3UseShortTime">三星Tag是否使用短时间7:40</param>
/// <param name="isLevel3UseShortTime2">三星Tag是否使用短时间1:00</param>
/// <param name="chooseLevel3Time">3 星招募时间</param>
/// <param name="chooseLevel4Time">4 星招募时间</param>
/// <param name="chooseLevel5Time">5 星招募时间</param>
/// <returns>是否成功。</returns>
public bool AsstAppendRecruit(
int maxTimes,
@@ -2221,8 +2222,9 @@ namespace MaaWpfGui.Main
bool useExpedited,
int selectExtraTagsMode,
bool skipRobot,
bool isLevel3UseShortTime,
bool isLevel3UseShortTime2 = false)
int chooseLevel3Time,
int chooseLevel4Time,
int chooseLevel5Time)
{
var taskParams = new JObject
{
@@ -2237,26 +2239,17 @@ namespace MaaWpfGui.Main
["expedite_times"] = maxTimes,
["skip_robot"] = skipRobot,
["first_tags"] = new JArray(firstTags),
["recruitment_time"] = new JObject
{
["3"] = chooseLevel3Time,
["4"] = chooseLevel4Time,
["5"] = chooseLevel5Time,
},
["report_to_penguin"] = Instances.SettingsViewModel.EnablePenguin,
["report_to_yituliu"] = Instances.SettingsViewModel.EnableYituliu,
["penguin_id"] = Instances.SettingsViewModel.PenguinId,
["server"] = Instances.SettingsViewModel.ServerType,
};
if (isLevel3UseShortTime)
{
taskParams["recruitment_time"] = new JObject
{
["3"] = 460, // 7:40
};
}
else if (isLevel3UseShortTime2)
{
taskParams["recruitment_time"] = new JObject
{
["3"] = 60, // 1:00
};
}
taskParams["report_to_penguin"] = Instances.SettingsViewModel.EnablePenguin;
taskParams["report_to_yituliu"] = Instances.SettingsViewModel.EnableYituliu;
taskParams["penguin_id"] = Instances.SettingsViewModel.PenguinId;
taskParams["server"] = Instances.SettingsViewModel.ServerType;
AsstTaskId id = AsstAppendTaskWithEncoding("Recruit", taskParams);
_latestTaskId[TaskType.Recruit] = id;
@@ -2557,8 +2550,11 @@ namespace MaaWpfGui.Main
/// </summary>
/// <param name="selectLevel">会去点击标签的 Tag 等级。</param>
/// <param name="setTime">是否设置 9 小时。</param>
/// <param name="chooseLevel3Time">3 星招募时间</param>
/// <param name="chooseLevel4Time">4 星招募时间</param>
/// <param name="chooseLevel5Time">5 星招募时间</param>
/// <returns>是否成功。</returns>
public bool AsstStartRecruitCalc(int[] selectLevel, bool setTime)
public bool AsstStartRecruitCalc(int[] selectLevel, bool setTime, int chooseLevel3Time, int chooseLevel4Time, int chooseLevel5Time)
{
var taskParams = new JObject
{
@@ -2571,30 +2567,11 @@ namespace MaaWpfGui.Main
["expedite_times"] = 0,
["report_to_penguin"] = false,
["report_to_yituliu"] = false,
["recruitment_time"] = new JObject { ["3"] = chooseLevel3Time, ["4"] = chooseLevel4Time, ["5"] = chooseLevel5Time },
["penguin_id"] = Instances.SettingsViewModel.PenguinId,
["yituliu_id"] = Instances.SettingsViewModel.PenguinId, // 一图流说随便传个uuid就行让client自己生成所以先直接嫖一下企鹅的
["server"] = Instances.SettingsViewModel.ServerType,
};
int recruitmentTime;
if (Instances.RecognizerViewModel.IsLevel3UseShortTime)
{
recruitmentTime = 460;
}
else if (Instances.RecognizerViewModel.IsLevel3UseShortTime2)
{
recruitmentTime = 60;
}
else
{
recruitmentTime = 540;
}
taskParams["recruitment_time"] = new JObject
{
{
"3", recruitmentTime
},
};
taskParams["penguin_id"] = Instances.SettingsViewModel.PenguinId;
taskParams["yituliu_id"] = Instances.SettingsViewModel.PenguinId; // 一图流说随便传个uuid就行让client自己生成所以先直接嫖一下企鹅的
taskParams["server"] = Instances.SettingsViewModel.ServerType;
AsstTaskId id = AsstAppendTaskWithEncoding("Recruit", taskParams);
_latestTaskId[TaskType.RecruitCalc] = id;

View File

@@ -176,45 +176,7 @@ namespace MaaWpfGui.ViewModels.UI
}
}
private bool _isLevel3UseShortTime = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.Level3UseShortTime, bool.FalseString));
/// <summary>
/// Gets or sets a value indicating whether to shorten the time for level 3.
/// </summary>
public bool IsLevel3UseShortTime
{
get => _isLevel3UseShortTime;
set
{
if (value)
{
IsLevel3UseShortTime2 = false;
}
SetAndNotify(ref _isLevel3UseShortTime, value);
ConfigurationHelper.SetValue(ConfigurationKeys.Level3UseShortTime, value.ToString());
}
}
private bool _isLevel3UseShortTime2 = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.Level3UseShortTime2, bool.FalseString));
/// <summary>
/// Gets or sets a value indicating whether to shorten the time for level 3.
/// </summary>
public bool IsLevel3UseShortTime2
{
get => _isLevel3UseShortTime2;
set
{
if (value)
{
IsLevel3UseShortTime = false;
}
SetAndNotify(ref _isLevel3UseShortTime2, value);
ConfigurationHelper.SetValue(ConfigurationKeys.Level3UseShortTime2, value.ToString());
}
}
public static SettingsViewModel RecruitSettingDataContext => Instances.SettingsViewModel;
private bool _recruitCaught;
@@ -259,7 +221,7 @@ namespace MaaWpfGui.ViewModels.UI
levelList.Add(6);
}
Instances.AsstProxy.AsstStartRecruitCalc(levelList.ToArray(), RecruitAutoSetTime);
Instances.AsstProxy.AsstStartRecruitCalc(levelList.ToArray(), RecruitAutoSetTime, RecruitSettingDataContext.ChooseLevel3Time, RecruitSettingDataContext.ChooseLevel4Time, RecruitSettingDataContext.ChooseLevel5Time);
}
private bool _recruitmentShowPotential = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.RecruitmentShowPotential, bool.TrueString));

View File

@@ -3548,46 +3548,6 @@ namespace MaaWpfGui.ViewModels.UI
}
}
private bool _isLevel3UseShortTime = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.IsLevel3UseShortTime, bool.FalseString));
/// <summary>
/// Gets or sets a value indicating whether to shorten the time for level 3.
/// </summary>
public bool IsLevel3UseShortTime
{
get => _isLevel3UseShortTime;
set
{
if (value)
{
IsLevel3UseShortTime2 = false;
}
SetAndNotify(ref _isLevel3UseShortTime, value);
ConfigurationHelper.SetValue(ConfigurationKeys.IsLevel3UseShortTime, value.ToString());
}
}
private bool _isLevel3UseShortTime2 = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.IsLevel3UseShortTime2, bool.FalseString));
/// <summary>
/// Gets or sets a value indicating whether to shorten the time for level 3.
/// </summary>
public bool IsLevel3UseShortTime2
{
get => _isLevel3UseShortTime2;
set
{
if (value)
{
IsLevel3UseShortTime = false;
}
SetAndNotify(ref _isLevel3UseShortTime2, value);
ConfigurationHelper.SetValue(ConfigurationKeys.IsLevel3UseShortTime2, value.ToString());
}
}
private bool _notChooseLevel1 = Convert.ToBoolean(ConfigurationHelper.GetValue(ConfigurationKeys.NotChooseLevel1, bool.TrueString));
/// <summary>
@@ -3648,6 +3608,167 @@ namespace MaaWpfGui.ViewModels.UI
}
}
private bool _chooseLevelTimeUpdating;
private int _chooseLevel3Hour = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel3Time, "9")) / 60;
public int ChooseLevel3Hour
{
get => _chooseLevel3Hour;
set
{
SetAndNotify(ref _chooseLevel3Hour, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel3Time = (value * 60) + ChooseLevel3Min;
}
}
}
private int _chooseLevel3Min = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel3Time, "0")) % 60;
public int ChooseLevel3Min
{
get => _chooseLevel3Min;
set
{
SetAndNotify(ref _chooseLevel3Min, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel3Time = (ChooseLevel3Hour * 60) + value;
}
}
}
private int _chooseLevel3Time = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel3Time, "540"));
public int ChooseLevel3Time
{
get => _chooseLevel3Time;
set
{
value = value switch
{
< 60 => 540,
> 540 => 60,
_ => value,
};
SetAndNotify(ref _chooseLevel3Time, value);
ConfigurationHelper.SetValue(ConfigurationKeys.ChooseLevel3Time, value.ToString());
_chooseLevelTimeUpdating = true;
ChooseLevel3Hour = value / 60;
ChooseLevel3Min = value % 60;
_chooseLevelTimeUpdating = false;
}
}
private int _chooseLevel4Hour = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel4Time, "540")) / 60;
public int ChooseLevel4Hour
{
get => _chooseLevel4Hour;
set
{
SetAndNotify(ref _chooseLevel4Hour, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel4Time = (value * 60) + ChooseLevel4Min;
}
}
}
private int _chooseLevel4Min = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel4Time, "540")) % 60;
public int ChooseLevel4Min
{
get => _chooseLevel4Min;
set
{
SetAndNotify(ref _chooseLevel4Min, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel4Time = (ChooseLevel4Hour * 60) + value;
}
}
}
private int _chooseLevel4Time = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel4Time, "540"));
public int ChooseLevel4Time
{
get => _chooseLevel4Time;
set
{
value = value switch
{
< 60 => 540,
> 540 => 60,
_ => value,
};
SetAndNotify(ref _chooseLevel4Time, value);
ConfigurationHelper.SetValue(ConfigurationKeys.ChooseLevel4Time, value.ToString());
_chooseLevelTimeUpdating = true;
ChooseLevel4Hour = value / 60;
ChooseLevel4Min = value % 60;
_chooseLevelTimeUpdating = false;
}
}
private int _chooseLevel5Hour = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel5Time, "540")) / 60;
public int ChooseLevel5Hour
{
get => _chooseLevel5Hour;
set
{
SetAndNotify(ref _chooseLevel5Hour, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel5Time = (value * 60) + ChooseLevel5Min;
}
}
}
private int _chooseLevel5Min = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel5Time, "0")) % 60;
public int ChooseLevel5Min
{
get => _chooseLevel5Min;
set
{
SetAndNotify(ref _chooseLevel5Min, value);
if (!_chooseLevelTimeUpdating)
{
ChooseLevel5Time = (ChooseLevel5Hour * 60) + value;
}
}
}
private int _chooseLevel5Time = Convert.ToInt32(ConfigurationHelper.GetValue(ConfigurationKeys.ChooseLevel5Time, "540"));
public int ChooseLevel5Time
{
get => _chooseLevel5Time;
set
{
value = value switch
{
< 60 => 540,
> 540 => 60,
_ => value,
};
SetAndNotify(ref _chooseLevel5Time, value);
ConfigurationHelper.SetValue(ConfigurationKeys.ChooseLevel5Time, value.ToString());
_chooseLevelTimeUpdating = true;
ChooseLevel5Hour = value / 60;
ChooseLevel5Min = value % 60;
_chooseLevelTimeUpdating = false;
}
}
#endregion
#region

View File

@@ -1730,8 +1730,9 @@ namespace MaaWpfGui.ViewModels.UI
Instances.SettingsViewModel.UseExpedited,
selectExtra,
Instances.SettingsViewModel.NotChooseLevel1,
Instances.SettingsViewModel.IsLevel3UseShortTime,
Instances.SettingsViewModel.IsLevel3UseShortTime2);
Instances.SettingsViewModel.ChooseLevel3Time,
Instances.SettingsViewModel.ChooseLevel4Time,
Instances.SettingsViewModel.ChooseLevel5Time);
}
private static bool AppendRoguelike()

View File

@@ -24,7 +24,7 @@
<Grid Margin="20,0,20,20" IsEnabled="{Binding Idle}">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="150" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<hc:ScrollViewer
Grid.Row="0"
@@ -53,7 +53,6 @@
</hc:ScrollViewer>
<StackPanel
Grid.Row="1"
Margin="27,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Orientation="Horizontal">
@@ -62,22 +61,6 @@
Margin="5"
Content="{DynamicResource AutoSettingTime}"
IsChecked="{Binding RecruitAutoSetTime}" />
<CheckBox
MaxWidth="170"
Margin="5"
HorizontalAlignment="Left"
IsChecked="{Binding IsLevel3UseShortTime}"
ToolTip="{DynamicResource Level3UseShortTimeTip}">
<controls:TextBlock Text="{DynamicResource Level3UseShortTime}" TextWrapping="Wrap" />
</CheckBox>
<CheckBox
MaxWidth="170"
Margin="5"
HorizontalAlignment="Left"
IsChecked="{Binding IsLevel3UseShortTime2}"
ToolTip="{DynamicResource Level3UseShortTimeTip}">
<controls:TextBlock Text="{DynamicResource Level3UseShortTime2}" TextWrapping="Wrap" />
</CheckBox>
<CheckBox
MaxWidth="200"
Margin="5"
@@ -88,31 +71,101 @@
</CheckBox>
</StackPanel>
<StackPanel Margin="40,0,40,0" VerticalAlignment="Center">
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel3Tags}"
IsChecked="{Binding ChooseLevel3}" />
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel4Tags}"
IsChecked="{Binding ChooseLevel4}" />
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel5Tags}"
IsChecked="{Binding ChooseLevel5}" />
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel6Tags}"
IsChecked="{Binding ChooseLevel6}" />
<StackPanel VerticalAlignment="Center">
<StackPanel Height="30" Orientation="Horizontal">
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel3Tags}"
IsChecked="{Binding ChooseLevel3}" />
<StackPanel Orientation="Horizontal" Visibility="{c:Binding RecruitAutoSetTime}">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel3Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel3Min}" />
</StackPanel>
</StackPanel>
<StackPanel Height="30" Orientation="Horizontal">
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel4Tags}"
IsChecked="{Binding ChooseLevel4}" />
<StackPanel Orientation="Horizontal" Visibility="{c:Binding RecruitAutoSetTime}">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel4Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel4Min}" />
</StackPanel>
</StackPanel>
<StackPanel Height="30" Orientation="Horizontal">
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel5Tags}"
IsChecked="{Binding ChooseLevel5}" />
<StackPanel Orientation="Horizontal" Visibility="{c:Binding RecruitAutoSetTime}">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel5Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding RecruitSettingDataContext.ChooseLevel5Min}" />
</StackPanel>
</StackPanel>
<StackPanel Height="30" Orientation="Horizontal">
<CheckBox
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Content="{DynamicResource AutoSelectLevel6Tags}"
IsChecked="{Binding ChooseLevel6}" />
<StackPanel Orientation="Horizontal" Visibility="{c:Binding RecruitAutoSetTime}" IsEnabled="False">
<hc:NumericUpDown
Width="55"
ValueFormat="00"
Value="9" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
ValueFormat="00"
Value="0" />
</StackPanel>
</StackPanel>
</StackPanel>
<Button
Width="180"

View File

@@ -57,20 +57,6 @@
IsEnabled="{c:Binding RefreshLevel3}">
<controls:TextBlock Text="{DynamicResource ForceRefresh}" TextWrapping="Wrap" />
</CheckBox>
<CheckBox
Margin="0,10"
HorizontalAlignment="Left"
IsChecked="{Binding IsLevel3UseShortTime}"
ToolTip="{DynamicResource Level3UseShortTimeTip}">
<controls:TextBlock Text="{DynamicResource Level3UseShortTime}" TextWrapping="Wrap" />
</CheckBox>
<CheckBox
Margin="0,10"
HorizontalAlignment="Left"
IsChecked="{Binding IsLevel3UseShortTime2}"
ToolTip="{DynamicResource Level3UseShortTimeTip}">
<controls:TextBlock Text="{DynamicResource Level3UseShortTime2}" TextWrapping="Wrap" />
</CheckBox>
<CheckBox
Margin="0,10"
Content="{DynamicResource ManuallySelectLevel1}"
@@ -80,14 +66,71 @@
Margin="0,10"
Content="{DynamicResource AutoSelectLevel3}"
IsChecked="{Binding ChooseLevel3}" />
<StackPanel
Height="30"
IsEnabled="{c:Binding ChooseLevel3}"
Orientation="Horizontal">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding ChooseLevel3Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding ChooseLevel3Min}" />
</StackPanel>
<CheckBox
Margin="0,10"
Content="{DynamicResource AutoSelectLevel4}"
IsChecked="{Binding ChooseLevel4}" />
<StackPanel
Height="30"
IsEnabled="{c:Binding ChooseLevel4}"
Orientation="Horizontal">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding ChooseLevel4Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding ChooseLevel4Min}" />
</StackPanel>
<CheckBox
Margin="0,10"
Content="{DynamicResource AutoSelectLevel5}"
IsChecked="{Binding ChooseLevel5}" />
<StackPanel
Height="30"
IsEnabled="{c:Binding ChooseLevel5}"
Orientation="Horizontal">
<hc:NumericUpDown
Width="55"
Maximum="9"
Minimum="1"
ValueFormat="00"
Value="{Binding ChooseLevel5Hour}" />
<controls:TextBlock Margin="5">:</controls:TextBlock>
<hc:NumericUpDown
Width="55"
Increment="10"
Maximum="50"
Minimum="0"
ValueFormat="00"
Value="{Binding ChooseLevel5Min}" />
</StackPanel>
<CheckBox
Margin="0,10"
Content="{DynamicResource AutoSelectLevel6}"