最后一次更新
This commit is contained in:
@@ -639,6 +639,40 @@ namespace COFTester.ViewModels
|
||||
{
|
||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 读取M31状态失败: {ex.Message}");
|
||||
}
|
||||
|
||||
// 连接成功后读取设置页的4个测试参数默认值
|
||||
try
|
||||
{
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] 开始读取设置页4个测试参数默认值...");
|
||||
var deviceParams = await modbusService.ReadManualControlParametersAsync();
|
||||
|
||||
if (deviceParams != null)
|
||||
{
|
||||
// 只更新设置页显示的4个测试参数
|
||||
Parameters.HorizontalTestSpeed = deviceParams.HorizontalTestSpeed;
|
||||
Parameters.HorizontalTestDisplacement = deviceParams.HorizontalTestDisplacement;
|
||||
Parameters.VerticalTestSpeed = deviceParams.VerticalTestSpeed;
|
||||
Parameters.VerticalTestDisplacement = deviceParams.VerticalTestDisplacement;
|
||||
|
||||
// 通知UI更新
|
||||
OnPropertyChanged(nameof(Parameters));
|
||||
|
||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 设置页参数读取成功:");
|
||||
System.Diagnostics.Debug.WriteLine($" 水平测试速度: {deviceParams.HorizontalTestSpeed} mm/min");
|
||||
System.Diagnostics.Debug.WriteLine($" 水平测试位移: {deviceParams.HorizontalTestDisplacement} mm");
|
||||
System.Diagnostics.Debug.WriteLine($" 升降测试速度: {deviceParams.VerticalTestSpeed} mm/min");
|
||||
System.Diagnostics.Debug.WriteLine($" 升降测试位移: {deviceParams.VerticalTestDisplacement} mm");
|
||||
}
|
||||
else
|
||||
{
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] 读取设置页参数失败,保持默认值");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 读取设置页参数异常: {ex.Message}");
|
||||
// 读取失败不影响连接,继续使用默认值
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -733,11 +767,9 @@ namespace COFTester.ViewModels
|
||||
OnPropertyChanged(nameof(DataPointsCount));
|
||||
LatestResult = null;
|
||||
|
||||
// 更新测试状态和按钮文本
|
||||
IsTesting = true;
|
||||
TestButtonText = Lang.TestInProgress; // 按钮显示"测试中"
|
||||
UpdateCanStartTest(); // 更新按钮可用性
|
||||
StatusMessage = $"开始测试 - {_selectedDirection}方向";
|
||||
// 先显示"正在启动测试..."状态,但不设置 IsTesting = true
|
||||
// 只有在确认 M31=1 后才设置 IsTesting = true
|
||||
StatusMessage = "正在启动测试...";
|
||||
UpdateScottPlot();
|
||||
|
||||
// M30 复归型按钮,M31 状态标记位(1=测试中,0=停止)
|
||||
@@ -762,19 +794,20 @@ namespace COFTester.ViewModels
|
||||
{
|
||||
if (isTestRunning)
|
||||
{
|
||||
// 测试真正启动,更新状态
|
||||
_m31Status = true; // 更新M31状态
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] M31 = 1,测试已启动");
|
||||
IsTesting = true; // 只有在确认测试启动后才设置为 true
|
||||
TestButtonText = Lang.TestInProgress; // 按钮显示"测试中"
|
||||
UpdateCanStartTest(); // 更新按钮可用性
|
||||
StatusMessage = "测试已启动";
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] M31 = 1,测试已启动,IsTesting = true");
|
||||
}
|
||||
else
|
||||
{
|
||||
// 测试未启动,保持原状态
|
||||
_m31Status = false; // 更新M31状态
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] M31 = 0,测试未启动");
|
||||
StatusMessage = "测试启动失败,请检查设备";
|
||||
// 启动失败时恢复按钮状态
|
||||
IsTesting = false;
|
||||
TestButtonText = Lang.StartTest;
|
||||
UpdateCanStartTest(); // 更新按钮可用性
|
||||
System.Diagnostics.Debug.WriteLine("[ViewModel] M31 = 0,测试未启动");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -783,11 +816,8 @@ namespace COFTester.ViewModels
|
||||
Application.Current?.Dispatcher.InvokeAsync(() =>
|
||||
{
|
||||
StatusMessage = $"启动测试失败: {ex.Message}";
|
||||
// 启动失败时恢复按钮状态
|
||||
IsTesting = false;
|
||||
TestButtonText = Lang.StartTest;
|
||||
_m31Status = false;
|
||||
UpdateCanStartTest(); // 更新按钮可用性
|
||||
System.Diagnostics.Debug.WriteLine($"[ViewModel] 启动测试异常: {ex.Message}");
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user