나는 다니엘의 대답을 받아 들여 예제를 만들었습니다.
<Window x:Class="SampleWpfApplication.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:SampleWpfApplication="clr-namespace:SampleWpfApplication">
<Window.Resources>
<DataTemplate DataType="{x:Type SampleWpfApplication:Result}">
<Label>Simple Result</Label>
</DataTemplate>
<DataTemplate DataType="{x:Type SampleWpfApplication:AssertionFailedResult}">
<Label>Assertion Failed!</Label>
</DataTemplate>
</Window.Resources>
<ContentControl x:Name="contentControl" Content="{Binding Path=Result}" />
</Window>
다음, 윈도우의 데이터 컨텍스트 인 모델 클래스 : 다음과 같이
public class Model
{
public Result Result { get; set; }
}
그리고 MainWindow를에
, 나는 DataContext를 설정 :
내가 코드를 게시하는 것은 도움이 될 줄 알았는데
DataContext = new Model()
{
Result = new AssertionFailedResult()
{
Success = false,
Description = "Assertion failed",
Expected = "1",
Actual = "1"
}
};
DataTemplate에서 wpf는 내 파트에서 추가 방향을 지정하지 않고 컨트롤을 렌더링하는 방법을 알고 있습니다. Daniel, 다시 한번 감사드립니다.