这在C#中被认为是不好的做法吗?

时间:2013-01-15 20:56:33

标签: c# .net events

我不是很擅长英语,我主要是在java中开发,我试图为clickevent创建一个外部evenlistener,但我一直觉得这是错误的。

这是我的例子: 表格..

public partial class MainFrame : System.Windows.Forms.Form
{
    private System.ComponentModel.Container components = null;
    private System.Windows.Forms.Button startButton;

    public MainFrame()
    {
        initGUI();
    }

    private void initGUI()
    {
        this.components = new System.ComponentModel.Container();

        this.Text = "CustomGUI";

        ShowIcon = false;

        this.startButton = new System.Windows.Forms.Button();
        startButton.Text = "Start";
        startButton.SetBounds(0, 0, 100, 25);

        this.Controls.Add(this.startButton);

        MainEventListener listen = new MainEventListener();
        startButton.Click += listen.startClicked;

    }


}

下一个:听众..

class MainEventListener
{

    public void startClicked(object sender, System.EventArgs e)
    {
        Application.Exit();
    }


}

最后:主要方法..

 class ApplicationStarter
{

    static void Main(string[] args)
    {
        MainFrame frame = new MainFrame();
        System.Windows.Forms.Application.Run(frame);
    }
}

我一直觉得我是以错误的方式做这件事。

1 个答案:

答案 0 :(得分:2)

  1. 您不必自己写这些。 Visual Studio提供了一个模板和一个Designer来管理所有表单初始化和配置代码。 (InitGUI =>分段类中的InitializeComponent)。

  2. 在C#中,您不必创建Listener类。只需使用活动。