【发布时间】:2011-05-30 08:33:38
【问题描述】:
xaml
<controls:TabControl x:Name="tabControlRoom" Grid.Row="1" Grid.Column="1" d:LayoutOverrides="Width, Height" ItemsSource="{Binding}" >
<controls:TabControl.ItemTemplate>
<DataTemplate>
<controls:TabItem Header="{Binding name}">
<StackPanel Margin="10" Orientation="Horizontal">
</StackPanel>
</controls:TabItem>
</DataTemplate>
</controls:TabControl.ItemTemplate>
</controls:TabControl>
和代码
m_roomContext.Load(m_roomContext.GetRoomQuery());
tabControlRoom.DataContext = m_roomContext.Rooms;
当我打开这个页面时,所有的元素都出现了,但一秒钟后我只看到一个白屏
错误:
查询的加载操作失败 '得到房间'。无法投射的对象 输入“Web.Room”来输入 'System.Windows.Controls.TabItem'/'
【问题讨论】:
-
嗨,我在使用此参数 d:LayoutOverrides="Width, Height" 重新创建代码时遇到了一些问题,无论如何,您将选项卡的负载放在哪里?
-
米歇尔,没有。这不是问题。我更新帖子。
-
m_roomContext.Load() 究竟是做什么的,m_roomContext.Rooms 的类型是什么?我猜,但我认为错误在于背后的代码,而不是绑定。只要选项卡的 datacontext 为空,您就可以看到所有元素,但一旦转换失败,它就会变为空白。
标签: c# wpf xaml data-binding silverlight-4.0