У меня возникают проблемы при добавлении встроенного типа InlineUIContainer определенного типа в InlineCollection (свойство Content) TextBlock. Похоже, что метод .Add () InlineCollection не принимает этот тип, однако вы можете явно установить его через XAML без явной пометки содержимого как InlineContainer, как продемонстрировано во многих примерах:
http://msdn.microsoft.com/en-us/library/system.windows.documents.inlineuicontainer.aspx
Можно ли программно добавить один из них, как показано ниже?
Target.Inlines.Add(new Run() { Text = "Test" });
Target.Inlines.Add(new InlineUIContainer() {
Child = new Image() { Source = new BitmapImage(new Uri("http://example.com/someimage.jpg")) } });
Target.Inlines.Add(new Run() { Text = "TestEnd" });
У меня есть ощущение, что происходит то, что Silverlight использует конвертер значений для создания прогонов, когда указано в XAML, как в примере, который не использует InlineContainer, но я не уверен, где искать, чтобы узнать.
Конкретная ошибка, которую я получаю, выглядит следующим образом:
Cannot add value of type 'System.Windows.Documents.InlineUIContainer' to a 'InlineCollection' in a 'System.Windows.Controls.TextBlock'.