121 lines
3.3 KiB
C#
121 lines
3.3 KiB
C#
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace PLCCommunication
|
|
{
|
|
public partial class TriggerUI : UserControl
|
|
{
|
|
public delegate void TrgParamChangeHandler(int Index);
|
|
|
|
public TriggerParams TrgParams = new TriggerParams();
|
|
|
|
public event TrgParamChangeHandler TrgParamChangeEvent;
|
|
|
|
public TriggerUI()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public TriggerUI(TriggerParams _trgParam)
|
|
{
|
|
InitializeComponent();
|
|
cbo_WriteType.DataSource = Enum.GetNames(typeof(VarType));
|
|
cboTriggerType.DataSource = Enum.GetNames(typeof(VarType));
|
|
cboReadType.DataSource = Enum.GetNames(typeof(VarType));
|
|
TrgParams = _trgParam;
|
|
}
|
|
|
|
private void TriggerUI_Load(object sender, EventArgs e)
|
|
{
|
|
txtResultAddr.Text = TrgParams.ResultAddr;
|
|
txtTriggerAddr.Text = TrgParams.TriggerAddr;
|
|
txtTrrigerCommand.Text = TrgParams.TriggerCmd;
|
|
txtReadAddr.Text = TrgParams.ReadAddr;
|
|
txtReadLength.Text =TrgParams.ReadLength.ToString();
|
|
cboReadType.Text = TrgParams.ReadType.ToString();
|
|
cbo_WriteType.Text = TrgParams.ResultType.ToString();
|
|
cboTriggerType.Text = TrgParams.TriggerType.ToString();
|
|
cbIsRead.Checked = TrgParams.IsRead;
|
|
}
|
|
|
|
private void cbo_WriteType_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.ResultType = (VarType)Enum.Parse(typeof(VarType), cbo_WriteType.SelectedItem.ToString(), false);
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void cboTriggerType_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.TriggerType = (VarType)Enum.Parse(typeof(VarType), cboTriggerType.SelectedItem.ToString(), false);
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void txtResultAddr_TextChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.ResultAddr = txtResultAddr.Text;
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void txtTriggerAddr_TextChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.TriggerAddr = txtTriggerAddr.Text;
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void txtTrrigerCommand_TextChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.TriggerCmd = txtTrrigerCommand.Text;
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
public void OnTrgParamChange(int Index)
|
|
{
|
|
if (this.TrgParamChangeEvent != null)
|
|
{
|
|
this.TrgParamChangeEvent(Index);
|
|
}
|
|
}
|
|
|
|
private void txtReadAddr_TextChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.ReadAddr = txtReadAddr.Text;
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void txtReadLength_TextChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.ReadLength =int.Parse( txtReadLength.Text.Trim());
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void cboReadType_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
TrgParams.ReadType = (VarType)Enum.Parse(typeof(VarType), cboReadType.SelectedItem.ToString(), false);
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
|
|
private void cbIsRead_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
if (cbIsRead.Checked)
|
|
{
|
|
TrgParams.IsRead = true;
|
|
|
|
}
|
|
else
|
|
{
|
|
TrgParams.IsRead = false;
|
|
}
|
|
|
|
OnTrgParamChange(TrgParams.Index);
|
|
}
|
|
}
|
|
}
|