借助网络配置,控制Modbus工具的日志显示,避免卡死界面
智能大石头
authored at
2021-12-11 22:09:19
XCoder
using Avalonia.Controls;
using Avalonia.Threading;
using XCoderAv.ViewModels;
namespace XCoderAv.Views;
/// <summary>MQTT 客户端窗口</summary>
public partial class MqttWindow : Window
{
/// <summary>实例化 MQTT 客户端窗口</summary>
public MqttWindow()
{
InitializeComponent();
var vm = new MqttViewModel();
vm.OnLog = OnLog;
DataContext = vm;
}
private void OnLog(String msg)
{
Dispatcher.UIThread.Post(() =>
{
if (msg == "__CLEAR__")
{
txtLog.Text = "";
return;
}
txtLog.Text += msg + "\n";
if (txtLog.Text.Length > 10000)
txtLog.Text = txtLog.Text[^5000..];
txtLog.CaretIndex = txtLog.Text.Length;
});
}
}
|