我迷失了如何为我的问题设计最好的类架构。我使用CardReader对象,它抛出以下事件:
// CardReader has read a card
public event CardReader.CardReadHandler CardRead;
// CardReader has a log message which can be processed
public event CardReader.LoggingHandler CardReaderLogging;
// A new hardware is connected to the computer
public event CardReader.ConnectHandler ReaderConnect;
在我的WPF应用程序中,我想对这些事件做出不同的反应。例如:
我对在窗口类中处理这些事件犹豫不决,感觉好像它属于自己的处理类或其他东西。目前,我编写了一个包装类,它以MainWindow为例,然后能够执行MainWindow方法(因为它保留了对调用MainWindow的私有引用):
public MainWindow()
{
InitializeComponent();
this.cardReader = new CardReader(this);
}
如果我继续这个想法,这将导致单独的CardReader包装类,每个类采用不同类型的窗口:
public ConfigurationWindow()
{
InitializeComponent();
this.cardReader = new CardReader(this);
}
你有什么建议吗?