问题:
需要对datagridviewrow的下拉框列item2所选内容进行判断,看是否跟数据库里面某个配置表的数据列item1匹配。
如果用两个foreach循环进行匹配,会导致逻辑复杂而且容易只break里面那层循环而忽略break外层循环而造成bug.
解决方案:
巧妙使用list,把配置表满足条件的item1统计装到list,再使用list的contains方法来判断datagridviewrow是否有行的item2列是等于item1相关项。
代码:
list<string> list = new list<string>(); datatable dt = xxxx; foreach (datarow dr in dt.rows) { list.add(dr["item1"].tostring()); } foreach (datagridviewrow row in dgv.rows) { if (list.contains(row.cells["item2"].editedformattedvalue.tostring())) { strxx = row.cells["xxxx"].editedformattedvalue.tostring(); break; } }
如对本文有疑问, 点击进行留言回复!!
使用Visual Studio2019创建C#项目(窗体应用程序、控制台应用程序、Web应用程序)
C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析
网友评论