【发布时间】:2012-10-31 04:29:16
【问题描述】:
使用 C# 实体框架对象,如下 2
项目:
- 项目名称
- itemtypeid
- 商品价格
- 项目大小
项目类型:
- 类型标识
- 类型名称
- 当前价格
- 字体大小
在项目编辑表单上有一个名为 typeidComboBox 的组合框绑定到 item.itemtypeid 和从 itemtype 数据源加载的项目列表数据源。
当表单加载时,绑定源将设置为。
private void Form1_Load(object sender, EventArgs e)
{
db = new dbtestEntities();
itemtypeBindingSource.DataSource = db.usertypes;
itemBindingSource.DataSource = db.users;
typeidComboBox.DataBindings.Clear();
typeidComboBox.DataBindings.Add(new System.Windows.Forms.Binding("SelectedValue", this.itemBindingSource, "itemtypeid", true));
typeidComboBox.DataSource = this.itemtypeBindingSource;
typeidComboBox.DisplayMember = "typename";
typeidComboBox.ValueMember = "typeid";
typeidComboBox.SelectionChangeCommitted += typeidComboBox_SelectionChangeCommitted;
}
当我在 SelectionChangeCommitted 事件中添加如下代码时出现问题。
代码:
private void typeidComboBox_SelectionChangeCommitted(object sender, EventArgs e)
{
(itemBindingSource.Current as item).itemprice = (itemtypeBindingSource.Current as itemtype).currentprice;
}
当SelectionChangeCommitted 事件的处理方式如Combobox 的BindingSource 属性更改时,为什么Combobox 选择取消并返回旧值?
对不起我的英语。
【问题讨论】:
标签: winforms entity-framework entity-framework-4 combobox selecteditemchanged