ContentTemplateProperty
をバインドしたいContentPresenter
:
<UserControl x:Class="MVVM.WPF.View.ControlViews.ParametersControlView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
<ContentPresenter Grid.Row="2" Grid.ColumnSpan="3"
Content="{Binding ExtraConsole.ViewModel, UpdateSourceTrigger=PropertyChanged}"
ContentTemplate="{Binding Source=ExtraConsole.DataTemplate, UpdateSourceTrigger=PropertyChanged}"/>
ビューモデル:
public class ParametersGenericViewModel : ParametersViewModel
{
public ParametersGenericViewModel()
{
DataTemplate = (DataTemplate)new ResourceDictionary { Source = new Uri(DataTemplateAddresses.Parameters, UriKind.Absolute) }[DataTemplateKeys.Parameters];
}
ParametersConsole extraConsole;
public ParametersConsole ExtraConsole
{
get { return extraConsole; }
set
{
extraConsole = value;
RaisePropertyChanged("ExtraConsole");
}
}
ExtraConsole.DataTemplate
他のすべてのバインドされたコントロールは正しく更新され、 ExtraConsole クラスのExtraConsole 、 ViewModel 、および DataContext の値は変更として通知されますがNotify
、Property Changed
に変更はありませんUI
。
助言がありますか?