Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#windows应用程序_C# - Fatal编程技术网

C#windows应用程序

C#windows应用程序,c#,C#,大家好,我正在用win表格申请 我有一个小问题,即我有我的主要形式作为 树状视图、面板和数据网格。我有一些用户控制表单 当我从树状视图中选择一个节点时,相应的用户控件将加载到主窗体的面板中。这很有效 现在,对于子节点,当我单击时,会附加一些文本文件,我将显示数据网格以及文本文件中存在的数据。这也很好 但是现在,当单击数据网格单元时,我想在用户控件窗体中显示数据 有人能告诉我们如何处理显示的特定用户控件中的控件吗?最好的方法是使用事件处理程序作为发布者-订阅者范例。 在发布服务器中,使用公共事件事

大家好,我正在用win表格申请

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

树状视图、面板和数据网格。我有一些用户控制表单

当我从树状视图中选择一个节点时,相应的用户控件将加载到主窗体的面板中。这很有效

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

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


有人能告诉我们如何处理显示的特定用户控件中的控件吗?最好的方法是使用事件处理程序作为发布者-订阅者范例。 在发布服务器中,使用公共事件事件处理程序FlightStarted并具有EventArgs类:

    public class StartEventArgs: EventArgs
    {
    public String flightCode { get; private set; }

    public StartEventArgs(String flightCode)
    {
        this.flightCode = flightCode;
    }
在publisher类中,使用OnSomething方法触发事件

    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);
        }
    }
void flight\u FlightLanded(对象发送方,事件参数e)
{
如果(e是LandEventArgs)
{
LandEventArgs LandEventArgs=e作为LandEventArgs;
String flight=landEventArgs.flightCode;
while(航班长度)