【发布时间】:2013-03-12 20:28:01
【问题描述】:
我想将以下内容从 Windows 窗体转换为 WPF:
achievements = DB.FillDataTable(String.Format("SELECT [id], [category], [name], [description], [count_threshold1], [count_threshold2], [count_threshold3], [count_threshold4], [count_threshold5], [date_threshold], [type], [iconImage] FROM [avatar_achievement] WHERE active = 'Y' ORDER BY [name]"));
DataRow row = achievements.NewRow();
row["name"] = String.Empty;
achievements.Rows.InsertAt(row, 0);
comboBoxAchName.DataSource = achievements;
comboBoxAchName.DisplayMember = "name";
comboBoxAchName.ValueMember = "id";
非常简单,这会从 SQL DB 中获取一些选择并将它们放入组合框中,显示“名称”列并将“id”列存储为值。现在,当用户在下拉列表中进行选择时,他们会选择“Oranges”,但我的代码可以获取值“222”。我需要这两条信息。
我将如何重写那个确切的代码块以便它可以在 WPF 组合框中工作?
【问题讨论】:
-
到目前为止,您在 WPF 中尝试过什么?如果您展示您已经尝试过的工作,您更有可能获得帮助。
-
我建议阅读您可以找到的关于 WPF 数据绑定的最基本教程(并且有很多)。基本上,如果您想使用 MVVM,最好将强类型对象作为 ItemsControl(ComboBox 就是)中的项目,这将使您能够拥有许多有趣的场景。
-
在 wpf 中更容易 :) 只需 google 一下
-
我用谷歌搜索了一个多小时,发现许多晦涩的参考文献,没有任何直接相关的内容。也许有人可以提供一个或多个此类指南的链接?如果指南确实持有答案,我什至会将其标记为答案!我是一名游戏设计专业的学生,在编程和自学几乎所有我所知道的方面只有 1 年的工作经验,所以我能在这里得到任何真正的指导将不胜感激!
标签: c# wpf data-binding combobox