当前位置:编程学习 > C#/ASP.NET >>

急! 50分求助,关于WPF控件TabItem的数据绑定问题?在线等~~


……

<Window.Resources>
<x:Array x:Key="EnemyList" Type="src:Enemy">
            <src:Enemy Location="10,50" Velocity="2,4" Type="plane.png" />
            <src:Enemy Location="150,50" Velocity="3,4" Type="plane.png" />
            <src:Enemy Location="20,400" Velocity="3,-4" Type="/plane.png" />
 </x:Array>
<DataTemplate x:Key="EnemyTemplate"  DataType="src:Enemy">
            <Image Source="{Binding Type}" Stretch="Fill" />
</DataTemplate>
</Window.Resources>

<Grid>
<TabControl Name="tabView" Margin="12,7,241,12" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" Grid.ColumnSpan="2">
            <TabItem Header="XX视图" Name="xxtab">
                <GroupBox Name="radargrop">
                    <Grid Background="Black">
                        <ListBox x:Name="_enemies"
 ItemsSource="{StaticResource EnemyList}"
 ItemTemplate="{StaticResource EnemyTemplate}" >
                        </ListBox>
                    </Grid>
                </GroupBox>
            </TabItem>
</TabControl>
</Grid>

……

我在TabControl 的TabItem控件里面绑定了EnemyList和EnemyTemplate,运行时提示
“无法将属性“ItemsSource”中的值转换为“System.Collections.IEnumerable”类型的对象。 “System.Windows.Markup.ArrayExtension”不是属性“ItemsSource”的有效值。  标记文件“Demo.WindowsPresentation;component/windows/mainwindow.xaml”中行247位置 20 的对象“_enemies”处的错误。”

如果把ListBox 控件直接放在根目录的Grid下则没有问题,我知道是类型不匹配,但具体怎样解决?

请问高手帮忙  在线等~~谢谢 --------------------编程问答-------------------- 你可以自己写一个class,用来作为ViewModel对象。然后在 <Window.DataContext> 中直接实例化它。 --------------------编程问答--------------------
引用 1 楼 sp1234 的回复:
你可以自己写一个class,用来作为ViewModel对象。然后在 <Window.DataContext> 中直接实例化它。


因为刚接触不久,所以不太熟悉,您说的这个class指的是数据吗?和代码中的Enemy是什么关系?另外,能不能帮忙写个例子?不胜感激,多谢! --------------------编程问答-------------------- 看看这个实现:http://www.cnblogs.com/mgen/archive/2011/12/30/2308118.html
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,