【发布时间】:2014-03-25 16:11:00
【问题描述】:
这是我的代码:
delegate void del(string data);
public partial class CreateUser : System.Web.UI.Page
{
static string rfidkey;
SerialPort serialPort1;
//Timer timer1;
del MyDlg;
private delegate void SetTextDeleg(string text);
public CreateUser()
{
serialPort1 = new SerialPort();
serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);
//
timer1 = new Timer();
timer1.Interval = 100;
timer1.Enabled = false;
timer1.Tick += new EventHandler<EventArgs>(timer1_Tick);
//
MyDlg = new del(Display);
}
void Display(string s)
{
txtRFIDKey.Text = s;
}
void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
Data.s = serialPort1.ReadExisting();
//txtRFIDKey.Text = Data.s;
MyDlg.BeginInvoke(Data.s, null, null);
}
}
【问题讨论】:
-
你遇到了什么错误?
-
网页中的服务器端计时器?页面可能已经完成渲染,并且页面对象在第一个 Tick 到达之前被销毁!另外:你期望那个串口在哪里?您现在正尝试在服务器上读取它(并且由于与计时器相同的原因而失败)
-
我没有收到任何错误,只是该值没有设置为文本框
-
您需要提供更多详细信息,说明您的问题是什么、您看到了什么错误,以及您的代码中哪些地方没有看到预期的结果。只是用标题添加代码 sn-p 不是一个格式正确的问题。
-
我只想在收到值时将值设置为文本框。