У меня есть приложение Silverlight, в котором я не использую XAML.У меня есть базовое приложение со следующим кодом в Application_Startup:
private void Application_Startup(object sender, StartupEventArgs e)
{
Grid g = new Grid();
g.Children.Add(new Image { Source = new System.Windows.Media.Imaging.BitmapImage(new Uri("http://sstatic.net/so/img/sprites.png", UriKind.Absolute)) });
this.RootVisual = g;
}
Этот код не будет отображать указанное изображение.Однако, если файл App.Xaml изменяется, чтобы определить RootVisual в Xaml, следующие работы:
xaml:
<Application.RootVisual>
<Grid>
</Grid>
</Application.RootVisual>
код:
private void Application_Startup(object sender, StartupEventArgs e)
{
((Grid)this.RootVisual).Children.Add(new Image { Source = new System.Windows.Media.Imaging.BitmapImage(new Uri("http://sstatic.net/so/img/sprites.png", UriKind.Absolute)) });
}
Iне понимаю, почему один будет работать, а другой нет.У меня такое же поведение при использовании UserControl (при использовании Content вместо Childern, конечно).
Из того, что я понимаю, не должно быть требований XAML.Я что-то упускаю?