3
我有一個基類(WPF窗口)的設計(xaml)和代碼。繼承WPF窗口
我想繼承這個類,不是爲了修改這個窗口的設計,而只是爲了修改代碼。
例如,我有一個登錄窗口,它是我的基類,它具有用於用戶名的文本框,用於密碼和登錄按鈕的文本框。
此外,它具有處理登錄的代碼。
現在,我想要實現這個對話框的2基類:
身份驗證對錶X.
身份驗證對錶Y.
我認爲我可以如下設計我的基礎對話框:
... BaseLoginWnd : Window
{
...
void Login_Click(...) // This method is implemented as a Template Method (Design pattern)
{
...
if (Authenticate())
{
MessageBox.Show("Success");
}
else
{
MessageBox.Show("Failure");
}
...
}
abstract bool Authenticate();
}
我會提到,我知道這不是這個特定示例的最佳設計(最好創建一個執行登錄的單獨類),但這僅僅是一個示例。
所以我的問題是 - 我怎樣才能從窗口繼承,使用基類的設計?
你有什麼嘗試?你見過[這個問題](http://stackoverflow.com/questions/11140000/creating-an-abstract-base-class-for-windows-in-wpf)? –
用戶界面不是認證相關代碼的適當位置。從後面的代碼中刪除所有內容,並創建一個適當的ViewModel和服務層,並將其所有責任放在它所屬的位置。您不需要爲此分類任何UI元素,因爲UI與您在此處所做的操作無關。 –