秦皇岛市网站建设_网站建设公司_移动端适配_seo优化
2025/12/26 17:30:46 网站建设 项目流程

低代码C#上位机开发:工业控件库+配置化设计

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace IndustrialControlLibrary
{
// 工业控件基类
public class IndustrialControl : UserControl
{
public string ControlID { get; set; }
public string DisplayName { get; set; }
public bool IsEditable { get; set; } = true;

public event EventHandler ValueChanged;

protected virtual void OnValueChanged()
{
ValueChanged?.Invoke(this, EventArgs.Empty);
}

public virtual object GetValue() => null;
public virtual void SetValue(object value) { }
}

// 按钮控件
public class IndustrialButton : IndustrialControl
{
private Button button;

public IndustrialButton()
{
button = new Button
{
Dock = DockStyle.Fill,
BackColor = Color.LightBlue,
ForeColor = Color.Black
};
button.Click += (s, e) => OnValueChanged();
Controls.Add(button);
}

public override object GetValue() => button.Text;
public override void SetValue(object value)
{
if (value is string text)
button.Text = text;
}
}

// 显示器控件
public class IndustrialDisplay : IndustrialControl
{
private Label label;

public IndustrialDisplay()
{
label = new Label
{
Dock = DockStyle.Fill,
TextAlign = ContentAlignment.MiddleCenter,
BackColor = Color.Black,
ForeColor = Color.Lime,
Font = new Font("Consolas", 12)
};
Controls.Add(label);
}

public override object GetValue() => label.Text;
public override void SetValue(object value)
{
label.Text = value?.ToString() ?? "";
}
}

// 输入框控件
public class IndustrialInput : IndustrialControl
{
private TextBox textBox;

public IndustrialInput()
{
textBox = new TextBox
{
Dock = DockStyle.Fill,
TextAlign = HorizontalAlignment.Center
};
textBox.TextChanged += (s, e) => OnValueChanged();
Controls.Add(textBox);
}

public override object GetValue() => textBox.Text;
public override void SetValue(object value)
{
textBox.Text = value?.ToString() ?? "";

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询