【发布时间】:2011-06-27 17:55:39
【问题描述】:
我一直在研究如何将 GridView 绑定到 ObservableCollection。所有示例都执行相同的步骤,但它不适用于我的应用程序。
我什至在此处复制了示例:http://www.switchonthecode.com/tutorials/wpf-tutorial-using-the-listview-part-1
在 XAML 中声明项目时,DisplayMemberBinding 正在工作,因此问题一定是集合。
对于 XAML:
<ListView ItemsSource="{Binding GameCollection}" Margin="0,123,0,41">
<ListView.View>
<GridView>
<GridViewColumn Width="140" Header="Game Name"
DisplayMemberBinding="{Binding GameName}" />
<GridViewColumn Width="140" Header="Creator"
DisplayMemberBinding="{Binding Creator}" />
<GridViewColumn Width="140" Header="Publisher"
DisplayMemberBinding="{Binding Publisher}" />
</GridView>
</ListView.View>
</ListView>
对于 CS
public partial class MainWindow : Window
{
ObservableCollection<GameData> _GameCollection =
new ObservableCollection<GameData>();
public MainWindow()
{
_GameCollection.Add(new GameData
{
GameName = "World Of Warcraft",
Creator = "Blizzard",
Publisher = "Blizzard"
});
_GameCollection.Add(new GameData
{
GameName = "Halo",
Creator = "Bungie",
Publisher = "Microsoft"
});
_GameCollection.Add(new GameData
{
GameName = "Gears Of War",
Creator = "Epic",
Publisher = "Microsoft"
});
InitializeComponent();
Focus();
}
public ObservableCollection<GameData> GameCollection
{ get { return _GameCollection; } }
}
public class GameData
{
public string GameName { get; set; }
public string Creator { get; set; }
public string Publisher { get; set; }
}
【问题讨论】:
标签: wpf listview gridview collections binding