我有一个C#应用程序,我正在使用与微控制器的串行通信来显示应用程序上的数据。我使用了一个文本框来显示数据:
public void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
try
{
DataRec = serialPort1.ReadExisting();
int.TryParse(DataRec, out myTotal);
this.BeginInvoke(new EventHandler(DisplayText));
}
catch(NullReferenceException)
{
//catching the exception
}
}
public void DisplayText(object sender, EventArgs e)
{
textBox2.Text = myTotal.ToString();
}
我还尝试使用标签代替TextBoxes。我得到了相同的结果,我没有看到任何性能变化。我正在使用标签,因为我不希望用户认为他们可以编辑文本框中的值。
我试过寻找一个优于另一个的优点。到目前为止,我看到的是:
使用标签或文本框时,在性能方面有哪些优点和缺点?
如果我使用标签可以吗?
答案 0 :(得分:3)
两者都有一些专业人士和对手。
专业人士:
<强>精读&#39; S:强>
专业人士:
<强>精读&#39; S:强>
multiline = true
) 我的意见:
在我看来,如果用户不能复制数据,你应该使用标签。例外情况是,如果您只有1个不可编辑的值,而其他所有值都是文本框,那么您应该只创建一个只读文本框。
答案 1 :(得分:1)
您已经回答了自己的问题。我觉得在这种情况下标签更合适。您可能会争辩说,您可能需要文本框提供的额外功能,但您应该考虑YAGNI原则。
至于优点和缺点,用户可能会认为他们能够在文本框中编辑值,他们不会使用标签犯这个错误。