SQL数据库编程

自由职业个体,提供SQL数据库编程开发和性能优化技术服务,提供C# .NET软件开发技术服务。同名微信公众号【SQL数据库编程】

博客园 首页 新随笔 联系 订阅 管理

问题:
需要对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;
    }
}

 

posted on 2019-10-31 08:56  张工502219048  阅读(1885)  评论(0)    收藏  举报