代码之家  ›  专栏  ›  技术社区  ›  Developer

C#windows应用程序

c#
  •  1
  • Developer  · 技术社区  · 14 年前

    我有一个小问题,即我有我的主要形式作为

    树状视图、面板和数据网格。我有一些用户控件窗体。

    现在对于子节点,我有一些文本文件,当我点击时,我将显示数据网格以及文本文件中的数据。这也很好。

    但是现在当点击数据网格单元时,我想在用户控件窗体中显示数据。

    1 回复  |  直到 14 年前
        1
  •  3
  •   Benny Skogberg    14 年前

    最好的方法是使用事件处理程序作为发布者-订阅者范例。 在您使用的发布服务器中 public event EventHandler FlightStarted; 还有一个EventArgs类:

        public class StartEventArgs: EventArgs
        {
        public String flightCode { get; private set; }
    
        public StartEventArgs(String flightCode)
        {
            this.flightCode = flightCode;
        }
    

        public void OnFlightStarted(StartEventArgs e)
        {
            if (FlightStarted != null)
                FlightStarted(this, e);
        }
    

    flight.FlightStarted += new EventHandler(flight_FlightStarted);
    

    方法呢

        void flight_FlightLanded(object sender, EventArgs e)
        {
            if (e is LandEventArgs)
            {
                LandEventArgs landEventArgs = e as LandEventArgs;
                String flight = landEventArgs.flightCode;
                while (flight.Length <= 15)
                    flight += " ";
                String time = DateTime.Now.ToLongTimeString();
                lbxStatus.Items.Insert(0, flight + "landed" 
                    + "                 " + time);
            }
        }
    

    更多内容请阅读: Event Tutorial C#