私は自分のビューの基本クラスを実装したいと思っていました。このクラスは、次のようになります。これは、基本クラスの利用があるUserControl継承WPF
public abstract class ViewBase<T> : UserControl, IView where T : ViewModelBase
{
protected ViewModelBase viewModel;
public ViewBase(T viewModel) : base()
{
this.InitializeComponent();
this.viewModel = viewModel;
this.DataContext = viewModel;
}
protected abstract void InitializeComponent();
public void OnViewCalled(object parameters)
{
this.viewModel.OnCalled(parameters);
}
}
:
public sealed partial class LoginView : ViewBase<LoginViewModel>
{
public LoginView(LoginViewModel viewModel) : base(viewModel)
{
}
}
問題は、私は上記のコードをしようとしたとき、私は次のエラーを取得ことです:
をCS1729 C# 'UserControl' does not contain a constructor that takes 1 arguments
ViewBase
クラスのコンストラクタが呼び出されないのはなぜですか?
ultコンストラクタも同様です。 – dcg
部分クラスを定義しました。おそらくクラスの一部はXAMLで定義されていますか?また、XAMLのViewBaseから継承したのですか、UserControlを使用しましたか? –
私は 'UserControl'から継承しました –