0

マスター/詳細エディターとして機能するフォームを作成しています。このフォームには2つのコントロールがあります。1つは基本的に重要なアイテムのリストであり、もう1つのコントロールはアイテムの詳細です。マスターコントロールに変更が加えられたときに詳細コントロールが更新されるように、両方のコントロールで同じBindingSourceオブジェクトを使用しようとしています。

私の形で私は持っています:

EmployerCollection employerCollection = new EmployerCollection();
employerCollection.GetMulti(null, 0, new SortExpression(EmployerFields.Name | SortOperator.Ascending));
bsEmployers.DataSource = employerCollection;

masterControl.Init(bsEmployers);
detailControl.Init(bsEmpoyers);

私のmasterControlには次のものがあります。

public void Init(BindingSource bs)
{
    bsEmployers = bs;
}

ただし、この方法でデータを渡すと、マスターコントロールにバインディングソースのデータを表示させることができません。

bsEmployers = bs行を削除し、他のロジックを次のように移動した場合にのみ、バインディングを機能させることができます。

public void Init(BindingSource bs)
    {
        EmployerCollection employerCollection = new EmployerCollection();
        employerCollection.GetMulti(null, 0, new SortExpression(EmployerFields.Name |             SortOperator.Ascending));
        bsEmployers.DataSource = employerCollection;
    }

BindingSourceオブジェクトを渡して共有できないものを誰かが知っていますか?コントロールでRefreshBindingsを呼び出してみましたが、効果がないようです。

ありがとう。

4

1 に答える 1