XAML を学習していますが、コントロールのコンテンツを子ウィンドウから設定プロパティにバインドする際に問題が発生しています。
より明確にするために作成した簡単な例を次に示します。メインウィンドウから子を呼び出す:
Private Sub Button1_Click(sender As Object, e As RoutedEventArgs) Handles Button1.Click
Dim OwndWindow As New WindowChild
OwndWindow.Owner = Me
OwndWindow.ShowDialog()
End Sub
そして、これは子供です:
<Window x:Class="WindowChild"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:src="clr-namespace:WpfApplication2"
Title="WindowChild" Height="300" Width="300">
<Window.Resources>
<ObjectDataProvider x:Key="ObjDatPro" ObjectType="{x:Type src:TestSettings}"></ObjectDataProvider>
</Window.Resources>
<Grid DataContext="{Binding Source={StaticResource ObjDatPro}}">
<CheckBox Content="CheckBox" Margin="0" HorizontalAlignment="Center" VerticalAlignment="Center"
IsChecked="{Binding Default.BoolSetting, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</Grid>
</Window>
この時点で、Visual Studio は次のエラーを報告しています。「TestSettings」という名前は名前空間「clr-namespace:WpfApplication2」に存在しません。(7行目、49列目)
この部分を に変更しようとしましWindowChild.TestSettings
たが、VS はネストされた型がサポートされていないと文句を言います。
CLR 名前空間を変更しWpfApplication2.WindowChild
てもWindowChild
うまくいかない、と VS は言う:未定義の CLR 名前空間。「clr-namespace」URI は、見つからなかった名前空間「WindowChild」を参照しています。
ここで何が間違っていますか?