zoukankan      html  css  js  c++  java
  • c# 委托初窥

    1.委托可以把方法当作参数在另一个方法中传递和调用 ,委托是方法的快捷方式。

    2.委托是一个类。

    private void BeginSocketThread()
            {
                try
                {
                    IPEndPoint iep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7060);
                    socketServer = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                    byte[] byteMessage = new byte[1024];
                    socketServer.Bind(iep);
    
                    // do 
                    while (true)
                    {
                        socketServer.Listen(5);
    
                        Socket newSocket = socketServer.Accept();
    
                        newSocket.Receive(byteMessage);
                        if (DBConnection.mode_ip == DBConnection.MODE_LOCAL)
                        {
                            MessageBox.Show(LocRM_controlForm.GetString("请选择数据中心工作模式"));
                            continue;
                        }
    
                        string socketSeriesID = Encoding.Default.GetString(byteMessage).Split('E')[0];
    
                        FormImageList formImageListA = new FormImageList();
                        formImageListA.SeriesIndex = 0;
    
                        formImageListA.Owner = this;
    
                        //   formImageListA.OpenSeries(socketSeriesID);
                        aaaaaaaaa(socketSeriesID);
                        //if (InvokeRequired)
                        //{
                        //    SetTextCallback md = new SetTextCallback(formImageListA.OpenSeries);
                        //    //this.Invoke(md, new object[] { socketSeriesID });
                        //    //SetTextCallback md = new SetTextCallback(formImageListA.OpenSeries);
                        //    //this.Invoke(md, new object[] { socketSeriesID });
                        //}
                        //else
                        //{
                        //    formImageListA.OpenSeries(socketSeriesID);
                        //}
    
                        formImageListA.Dispose();
                    }
                }
    
                catch (Exception ex)
                {
                    MessageBox.Show("normal exp :"+ex.Message + "
    " +ex.StackTrace);
                }
            }
    
            private void aaaaaaaaa(string recvStr)
            {
                if (InvokeRequired)
                {
                    SetTextCallback set = new SetTextCallback(aaaaaaaaa);
                    Invoke(set, recvStr); 
                }
                else
                {
                    FormImageList formImageListA = new FormImageList();
                    formImageListA.SeriesIndex = 0;
    
                    formImageListA.Owner = this;
    
                    formImageListA.OpenSeries(recvStr);
                    formImageListA.Dispose();
                }
            }
  • 相关阅读:
    12小时制时间
    sqlserver 安装和配置
    建议71:区分异步和多线程应用场景
    AVD管理器提示:PANIC:Could not open:AVD名称 解决办法
    一道看似复杂但是简单的c#面试题
    XML Schema 配置文件自动生成c#类设计案例子
    VS2010中的调试技巧 断点
    文章已被删除
    使用MONO使.net程序脱离.net框架运行
    5个很好用的.net 分析工具
  • 原文地址:https://www.cnblogs.com/gaara-zhang/p/9325502.html
Copyright © 2011-2022 走看看