私は依存関係注入のためにninjectを使ってWinFormアプリケーションを開発しています。私の最初の問題は、インスタンス化されるフォームにパラメータ(DIの場合)があることでした。私はこれが助けになると考えて、無パラメータのコンストラクタを追加しました。問題は、コンストラクタ内のパラメータを持つコードがスキップされることです。ここではそれがどのように見えるか:frmSettingsフォームでninjectのdiとwinformsでパラメータのないコンストラクタを使う方法
private void mnuSettings_Click(object sender, System.EventArgs e)
{
frmSettings objForm = new frmSettings();
objForm.Owner=this;
objForm.Show();
}
:私のメインフォームで
コードを設定するので、私は_applicationProperties.GetExtractFileSaveLocationDirectory(呼び出すとき
private readonly IApplicationPropertiesInterface _applicationProperties;
public frmSettings()
{
InitializeComponent();
}
public frmSettings(IApplicationPropertiesInterface applicationProperties) : this()
{
_applicationProperties = applicationProperties;
}
)それが吹きます_applicationPropertiesは決して呼び出されませんでした。
私はこれを正しく構成していないのだろうと思っています。これを達成する最良の方法は何ですか。私の目標は、パラメータのないコンストラクタを呼び出すことですが、_applicationPropertiesも設定します。
ご協力いただき誠にありがとうございます。
frmSettings。 –