10

派生クラスの基本コンストラクターが実行されないという問題があります。私はこれを100回実行しましたが、基本コンストラクターが実行されていない理由を一生理解できません。誰かが私が見逃している簡単なものを見つけてくれることを願っています。コードの例を以下に示します。私のベースコンストラクターが最初に呼び出されない理由を誰かが知っていますか?同じ方法で実装される他のクラスがあり、基本コンストラクターが常に最初に呼び出されます。

if (item.GetType() == typeof(OtherChargeItem))
{
    OtherChargeItemAddUpdateTest test = new OtherChargeItemAddUpdateTest((OtherChargeItem)item);
    test.StartPosition = FormStartPosition.CenterParent;
    test.ShowDialog();
}

public OtherChargeItemAddUpdateTest()
{
    InitializeComponent();
}

public OtherChargeItemAddUpdateTest(OtherChargeItem item)
        : base()
{
    currentItem = item;
}
4

1 に答える 1

27

基本クラスではなく、同じクラスのデフォルトコンストラクターを呼び出したいようです。したがってInitializeComponent、2番目のコンストラクターが呼び出されたときに呼び出されます。this()の代わりに試してくださいbase()

于 2012-06-18T16:16:36.873 に答える