C# ComboBox控件“设置 DataSource 属性后无法修改项集合”的完美解决方法

作者:至清无物 时间:2023-01-30 04:11:58 

由于毕业后工作没有对接到专业问题,导致四五年没有碰过Winform程序了。突然由于工作问题,为了方便自己,所以想自己写写小winform小软件,用于自己使用。在使用ComboBox控件时,遇到了重新绑定赋值出问题的情况。

错误代码如下:


if (CustomerBLL.select().Rows.Count > 0)
{
cbTcid.Items.Clear();
cbTcid.DataSource = CustomerBLL.select();
cbTcid.ValueMember = "Cid";
cbTcid.DisplayMember = "Cpname";
}
else
{
return;
}

正常情况下,对于数据重新赋值的或者绑定数据源的时候,为了防止数据出现问题,都会先清空原来数据,所以就这样写了,但是没有相当恰恰这样写就出现问题了。 于是在网上找了一下。发现有人是这样操作的。【如下】

网上查找方法如下:


if (CustomerBLL.select().Rows.Count > 0)
{
// cbTcid.Items.Clear();
if (cbTcid.Items.Count > 0)
{
cbTcid.DataSource = null;
cbTcid.Items.Clear();
}
cbTcid.DataSource = CustomerBLL.select();
cbTcid.ValueMember = "Cid";
cbTcid.DisplayMember = "Cpname";
}
else
{
return;
}

但是最后我尝试了一下,在下次绑定数据源的时候,不清空上次的数据,是否可以呢?于是成功了。


if (CustomerBLL.select().Rows.Count > 0)
{
/*cbTcid.Items.Clear();
if (cbTcid.Items.Count > 0)
{
cbTcid.DataSource = null;
cbTcid.Items.Clear();
}*/
cbTcid.DataSource = CustomerBLL.select();
cbTcid.ValueMember = "Cid";
cbTcid.DisplayMember = "Cpname";
}
else
{
return;
}

而且最主要的是,在绑定数据源之前的数据,也自动清空了。是否真是这样呢,还是如何呢?难道说这个ComboBox控件在下次绑定时候回自动清空,其他控件呢?欢迎大家讨论,而且此方法是否会出现代码不规范呢?由于我的是小数据,遇到大数据是否可行呢,希望大家说说自己的建议。

以上所述是小编给大家介绍的C# ComboBox控件“设置 DataSource 属性后无法修改项集合”的完美解决方法网站的支持!

来源:http://www.cnblogs.com/ygyalex/archive/2016/11/03/6027797.html

标签:combobox,datasource
0
投稿

猜你喜欢

  • java 键盘输入一个数,输出数组中指定元素的示例

    2023-11-24 20:31:14
  • java构造方法的作用总结

    2023-05-31 00:54:45
  • 一文详解Java抽象类到底有多抽象

    2023-08-27 01:41:26
  • Java实现堆排序(Heapsort)实例代码

    2023-06-15 02:02:11
  • Java C++题解leetcode886可能的二分法并查集染色法

    2023-08-29 01:12:52
  • Java的设计模式编程中迪米特法则的应用示例

    2022-10-29 01:34:35
  • Android编程判断是否连接网络的方法【WiFi及3G判断】

    2022-01-28 02:31:09
  • 解决Android平台中应用程序OOM异常的方法

    2023-07-29 09:45:17
  • Flutter Widgets之标签类控件Chip详解

    2023-06-26 14:22:35
  • Android入门之实现自定义Adapter

    2021-09-30 17:34:10
  • C# 如何调用C++ dll string类型返回

    2023-01-31 02:27:55
  • SpringBoot利用@Retryable注解实现接口重试

    2023-03-08 19:54:42
  • Android使用 Retrofit 2.X 上传多文件和多表单示例

    2023-08-06 03:48:25
  • 详解spring中的Aware接口功能

    2023-07-02 00:36:01
  • C#操作EXCEL DataTable转换的实例代码

    2022-05-18 04:25:15
  • android 获取视频,图片缩略图的具体实现

    2023-07-28 00:20:39
  • SpringBoot项目中如何访问HTML页面

    2021-08-09 11:19:07
  • Eureka源码阅读之环境搭建及工程结构

    2023-07-26 01:02:36
  • Java中的 FilterInputStream简介_动力节点Java学院整理

    2023-01-21 17:18:56
  • Java 添加超链接到 Word 文档方法详解

    2023-01-29 08:49:30
  • asp之家 软件编程 m.aspxhome.com