在 Windows 窗体应用程序 C# 中以编辑模式将值绑定到组合框
Posted
技术标签:
【中文标题】在 Windows 窗体应用程序 C# 中以编辑模式将值绑定到组合框【英文标题】:Bind value to combobox in Edit mode in windows form app C# 【发布时间】:2021-10-23 15:02:27 【问题描述】:我有一个列表,我在其中放置了添加和编辑按钮。两个按钮都使用相同的形式。 我使用组合框来添加或编辑人员的角色。这个列表是关于一个人可以拥有的不同角色,所以我需要来自表格人员的人员 ID。在这种情况下,我添加了一个组合框供用户在人员表中查找。 “添加”按钮成功,但我不知道如何在编辑模式下将人名提取到组合框中。我的代码如下:
在表单加载中:
var person = (from b in db.PersonRepository.GetAll()
select new b.Id , Fullname = b.LName + " " + b.Name + "-" +
b.Id.ToString() ).ToList();
person.Insert(0, new
Id = 0,
Fullname = "Please select one"
);
cmbSelectName.DisplayMember = "Fullname";
cmbSelectName.ValueMember = "Id";
cmbSelectName.DataSource = person;
我还将编辑记录的代码放在代码上方:
if (PersonRoleId != 0)
this.Text = "edit";
btnAddOrEditPersonRole.Text = "edit";
var personRole = db.PersonRoleRepository.GetById(PersonRoleId);
var person1 = (from b in db.PersonRepository.GetAll()
where b.Id == personRole.PId
select new b.Id, Fullname = b.LName + " " + b.Name + "-" +
b.Id.ToString() ).ToList().FirstOrDefault();
cmbSelectName.SelectedValue = person1.FullName;
txtRolePost.Text = personRole.PersonPost;
chbRolePersonStatus.Checked =(bool) personRole.Status;
【问题讨论】:
【参考方案1】:搜索后我明白我应该使用
cmbSelectName.Text = person1.FullName;
而不是
cmbSelectName.SelectedValue = person1.FullName;
我只是为遇到相同问题的任何人写答案,我也这样做
【讨论】:
以上是关于在 Windows 窗体应用程序 C# 中以编辑模式将值绑定到组合框的主要内容,如果未能解决你的问题,请参考以下文章
如果应用程序具有应用程序清单,如何在 C# 中以编程方式获取?
在 C# WPF 或 Windows 窗体应用程序中使用 DirectX c++ DLL
Windows 窗体应用程序中的 HTML 编辑器 [关闭]