コードビューからUserControlのバインドされたオブジェクト(listView itemsourceから生成)にアクセスしようとしています。私は、ユーザーコントロールが、それはすなわち、から値をだなっていることをCustomerオブジェクトにアクセスしたい、gereratedされている各ユーザーコントロールでWPFリストビューバインド - コード内でバインドされた項目を取得
<ListView x:Name="lst1">
<ListView.ItemTemplate>
<Controls:MyUserControl />
</ListView.ItemTemplate>
<ListView>
public void Load()
{
lst1.ItemsSource = List<Customer> from database ......
}
:
私は、次のコードを持っています:
public MyUserControl()
{
InitializeComponent();
Customer cust = (Customer)this.DataContext;
// cust is null????
}
このコードは、Customerオブジェクトのプロパティを正常に表示しますが、コードbええ。
助けてください。
ありがとうございます。私はキャストで質問を更新しました。 – Noobie3001
短くて甘い答えをありがとう。私は、DataContextが構築後まで利用できないことを知らなかった。私は後でセーブが行われるまでそれを使用するつもりはありませんでした。多くはもう一度ありがとう。 – Noobie3001
@ Noobie3001それを考えると、コンストラクタが完了するまで、誰もそれに何かを割り当てることはできません。新しいクラスインスタンス自体は、それだけでDataContextの値を得ることができます。パラメータをコンストラクタに渡します。しかし、そのコンストラクタにはパラメータはありません。 –