ユーザーコントロールのデータコンテキストをウィンドウのデータコンテキストにバインドしようとしています。しかし、何らかの形で、ユーザーコントロールのコードの後ろに、データコンテキストがnullです。私はここで間違って何をしていますか?WPFのメインウィンドウにユーザーコントロールのデータコンテキストをバインドします。
{RelativeSource = {RelativeSource自己}、パス=のDataContextをバインド}
<Window x:Class="MyApp.Dialogs.SettingsWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dialogs="clr-namespace:MyApp.Dialogs"
Title="Settings">
<dialogs:Usercontrol DataContext="{Binding RelativeSource={RelativeSource Self}}"></dialogs:Usercontrol>
</Window>
正確に!問題は、 'DataContext'をユーザーコントロールのコードビハインドの変数にキャストしようとしていることです!それが問題の場所です!そこで、ユーザーコントロールのコードビハインドで、その変数にデータコンテキストをキャストして割り当てる必要がありますか? – Vahid
私は 'Load'イベントがトリガするまでに全てが読み込まれるべきだと言います。 @Vahid – Jai
@Jai私が持っている問題はこれです:私は 'DataContext'を変更する' Checked'イベントを持つ私のユーザコントロールに2つのラジオボタンを持っています。コンポーネントが初期化されるとすぐに、 'Checked'イベントが発生し、nullデータコンテキストを変更しようとします。今のところ、データコンテキストが例外を回避するためにnullの場合、単にイベントから戻ってきますが、これを処理するためのより適切な方法が必要であることはわかっています。 – Vahid