本文整理汇总了C#中Control.Copy方法的典型用法代码示例。如果您正苦于以下问题:C# Control.Copy方法的具体用法?C# Control.Copy怎么用?C# Control.Copy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Control
的用法示例。
在下文中一共展示了Control.Copy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UnpackReceive
/// <summary>
/// 对二进制串解报
/// </summary>
/// <param name="bytetemp"></param>
/// <param name="con"></param>
public int UnpackReceive(byte[] bytetemp, Control con,ref ASDUClass.FunType ft, ref ASDUClass.TransRes tr)
{
try
{
if ((bytetemp.Length == 1) && (bytetemp[0] == 0xe5))
{
//收到 E5
return 1;
}
if ((bytetemp.Length == 5) && (bytetemp[0] == 0x10) && (bytetemp[4] == 0x16))
{
Frame_101 temp = new Frame_101(bytetemp);
if (temp.GetControl().PRM == false)
{
con.Copy(con, temp.GetControl());
Console.WriteLine("RX: ACD:{0} DFC:{1} FUNCTION:{2}\r\n",
temp.GetControl().ACD, temp.GetControl().DFC, temp.GetControl().function_0);
try
{
sw = File.AppendText(logfile);
sw.WriteLine(DateTime.Now.ToString() + " RX: ACD:{0} DFC:{1} FUNCTION:{2}\r\n",
temp.GetControl().ACD, temp.GetControl().DFC, temp.GetControl().function_0);
sw.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message.ToString());
}
//收到固定长度帧
return 2;
}
}
if (bytetemp.Length > 5)
{
Frame_101 vtemp = new Frame_101(bytetemp);
if ((vtemp != null) && (vtemp.GetControl().PRM == false))
{
Console.WriteLine("RX: ACD:{0} DFC:{1} FUNCTION:{2} Time:{3} ASDUType:{4} Res:{5}",
vtemp.GetControl().ACD, vtemp.GetControl().DFC, vtemp.GetControl().function_0, DateTime.Now, vtemp.GetAsduType(), vtemp.Res);
//Console.WriteLine("RX: {0}", vtemp.ToString());
try
{
sw = File.AppendText(logfile);
sw.WriteLine(DateTime.Now.ToString() + " RX: ACD:{0} DFC:{1} FUNCTION:{2} ASDUType:{3} Res:{4}",
vtemp.GetControl().ACD, vtemp.GetControl().DFC, vtemp.GetControl().function_0, vtemp.GetAsduType(), vtemp.Res);
sw.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message.ToString());
}
con.Copy(con, vtemp.GetControl());
ft = vtemp.GetAsduType();
tr = vtemp.Res;
var datas = vtemp.GetData();
foreach (var data in datas)
{
//if (data.Addr == 0) continue;
Console.WriteLine("RX: " + "addr:" + data.Addr.ToString() + " " +
"data:" + data.Data.ToString() + " " +
"time:" + data.Time.ToString());
//try
//{
// sw = File.AppendText(logfile);
// sw.WriteLine("RX: " + "addr:" + data.Addr.ToString() + " " +
// "data:" + data.Data.ToString() + " " +
// "time:" + data.Time.ToString());
// sw.Close();
//}
//catch (Exception ex)
//{
// Console.WriteLine(ex.Message.ToString());
//}
numInf numtemp = new numInf();
if (find.TryGetValue(data.Addr, out numtemp))
{
numtemp.val = Convert.ToSingle(data.Data);
if (data.Time != null)
{
numtemp.dtm = Convert.ToDateTime(data.Time);
}
else numtemp.dtm = DateTime.Now;
find.Remove(data.Addr);
find.Add(data.Addr, numtemp);
}
else
{
numtemp.val = Convert.ToSingle(data.Data);
if (data.Time != null)
{
numtemp.dtm = Convert.ToDateTime(data.Time);
//.........这里部分代码省略.........