Вот очень простое воспроизведение: Запустите VS2010 или VS2008, новый проект WPF (.Net Framework 3.5 sp1), добавьте в проект пустую страницу (Page1.xaml).
Остальной кодв MainWindow.xaml.cs:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
TestFrameContent();
}
private void TestFrameContent()
{
FrameworkElement fe = Activator.CreateInstance(Type.GetType("WpfFrameContentProblem.Page1")) as FrameworkElement;
Frame frmContainer = new Frame();
frmContainer.Content = fe;
Debug.Assert(frmContainer.Content != null, "Content is null");
}
}
Запустите приложение, оно не будет работать на Debug.Assert, укажите, что frmContainer.Content == null.
Это действительно загадка для меня,что простое назначение не удастся.Кто-нибудь?