ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

c# – 使用ComboBox作为表单中的索引 – 更新ComboBox选择更改的控件

2019-07-05 13:17:30  阅读:473  来源: 互联网

标签:c net winforms combobox


这实际上是一个非常简单和基本的问题,如果这是一个重复的问题(肯定是必须的),我很抱歉,但我无法在任何地方找到一个直截了当的答案,我终于放弃了.

我在Visual Studio ’17中创建了一个Windows窗体应用程序,基于SQL服务器表创建了一个数据源,并添加了一个绑定的组合框.到现在为止还挺好.使用DataSource / DataSet面板中的拖放功能,我在文本框中填充了几个字段并绑定到数据.使用自动添加的数据绑定导航器,我可以滚动表格和控件全部更新,所以我知道它们都已正确绑定.

现在,我想要完成的是在组合框选定值更改时更新控件.但他们没有.从我读过的内容来看,我猜测组合框需要警告数据源当前记录需要更新吗?如果是这样,我如何让它更新为组合框中的键值?或者这可能完全错了?我希望VS能为绑定控件发挥其魔力,这样我就不必处理每个组合更改事件,查询数据库,然后更新每个控件.

我认为这将是一项简单的任务;鉴于它非常基础,肯定会有直接的解释,但讨论的问题要么更复杂,要么讨论数据绑定过程和对象的迷宫.这是我常用的.net和SQL编码的一个侧面冒险,所以我希望只需要一个或两个直接的事件处理程序.

解决方法:

当您想要设置像ComboBox或ListBox这样的列表控件作为数据的索引时:

>将其DataSource属性设置为与其他控件绑定的相同DataSource.
>将其DisplayMember设置为在组合框中显示,但不需要设置ValueMember.
>不要触摸(DataBindings).您不需要设置数据绑定.

假设您有一个productsBindingSource,这些是绑定控件的设置:

> idTextBox→数据绑定:绑定到productsBindingSource的Id属性的Text属性
> nameTextBox→数据绑定:绑定到productsBindingSource的Name属性的Name属性
> priceTextBox→Data Bindings:Price属性绑定到productsBindingSource的Price属性

然后让ComboBox充当索引,这些是ComboBox的设置:

> DataSource属性设置为productsBindingSource
> DisplayMember属性设置为Name
>不要触摸(DataBindings).您不需要设置数据绑定.

然后,当您从ComboBox中选择一个项目时,绑定控件将显示所选项目,绑定导航器也将移动:

enter image description here

标签:c,net,winforms,combobox
来源: https://codeday.me/bug/20190705/1387590.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有