после кода:
var roomTable = from desks in context.RoomToStandartDesks
where desks.id_room == room.id
select desks.Desk;
var tabItem = new TabItem
{
DataContext = roomTable,
Header = headerText,
};
if (controlTemplate == null)
tabItem.Content = (object)roomTable;
else
tabItem.Content = new ContentControl { Template = controlTemplate };
tabItems.Add(tabItem);
((ContentControl)(tabItem.Content)).Content
== ноль
((ContentControl)(((ContentControl)(tabItem)).Content)).ContentTemplate
== ноль
и xaml ControlTemplate:
<ControlTemplate x:Key="MyTabItemContentTemplate">
<StackPanel>
<TextBlock Text="{Binding Path=x}"/>
<ItemsControl ItemsSource="{Binding DataContext, Converter={StaticResource KeySimplyConvert}}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas Margin="10" Background="AliceBlue" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border>
<Border.RenderTransform>
<TranslateTransform X="{Binding x, Mode=TwoWay}" Y="{Binding y, Mode=TwoWay}"/>
</Border.RenderTransform>
<Managerer:TablePanel DataContext="{Binding}" />
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</ControlTemplate>
Почему?
Использование Silverlight 4.