Я использую функцию «Выборка данных из класса» Expression Blend для генерации выборочных данных для моих ViewModels в моем проекте MVFM WPF. Несмотря на то, что в большинстве случаев это работает нормально, мне кажется, что я не могу использовать ContentPresenter для представления модели представления, и шаблон DataTemplate, который он должен использовать, не имеет ключа, а только DataType.
Вместо рендеринга примеров данных с использованием шаблона, он просто отображает имя класса с префиксом.
В качестве примера возьмем эту ViewModel
public class TestClass
{
public string TestString { get; set; }
}
этот шаблон данных
<DataTemplate DataType="{x:Type my:TestClass}" >
<TextBlock Text="{Binding TestString}" />
</DataTemplate>
и этот XAML
<ContentPresenter Content="{Binding MyPropertyContainingATestClass}" />
Теперь во время выполнения все должно быть, но во время разработки Blend вместо содержимого TestString показывает «_di0.MyNameSpace.TestClass».
Я предполагаю, что это потому, что классы, сгенерированные функцией образца данных, имеющие одинаковые свойства и т. Д., На самом деле не имеют требуемого типа. Есть ли способ обойти это? Я бы предпочел использовать этот способ для интеграции образцов данных, и не иметь все эти бессмысленные данные в моих реальных моделях представления.