我的应用程序旨在加载 XML 文件并显示错误(如果有)。
我遇到的问题是如何在不耦合的情况下在屏幕上同时显示(XML 和错误)(我的应用程序当前可以工作)。
我的应用程序目前看起来像(请不要嘲笑或评论我正在上 Photoshop\UI 课程):
棕色是称为 XmlView 的不同视图。
红色框是我希望显示错误的地方。
因此,用户单击 File->Open,选择文件,.XML 内容显示在我的 XmlView(棕色)中,我的错误消息显示为红色。这行得通,但是我有一种可怕的感觉,我的设计很糟糕,因为我已经完全耦合了我的 MainWindow 和 XmlView。
我的工作方式是,当用户选择一个有效的 XML 文件(从 File->Open)时,我创建我的 XmlView 的一个实例并将它绑定到我的 MainWindow 类的 Views 属性。我的 XmlView 采用 1 个参数,即 MainWindow 类型。
因此,在我的 XmlView 中,要更新我的 ErrorList,我会编写类似于
_mainWindow.ErrorList.Add(//newError)
但这现在意味着我的 XmlView 知道我认为不想要的 MainWindow。
所以,最后,我的问题!我的设计很差还是可以?