选中复选框时实现 foreach 循环的 C# 逻辑

标签 c# foreach

我的 Windows 应用程序中有一个名为“Continuous”的复选框。当用户选中此项并单击“处理”按钮时,应用程序将处理列表框中的所有项目。但是,如果用户不选中此框,它将只处理列表中的第一个。

在我的 Process 方法中,我想编写一个 if 条件来检查选中的复选框并执行 foreach 循环,否则只执行第一项。

这是我的代码

private void btnProcess_Clicl()
{

  bool bDone = false;

  while(!bDone)
  {

    LoadList(); //This will load the list from database into listBox

    if(listBox.items.Count > 0)
    {
      ProcessList();
    }

    if(!chkBox.Checked)
      bDone = true;

  }

}

我已经在 ProcessList() 方法中实现了 foreach 循环来处理列表。如果用户选中连续的复选框,是否有办法避免执行 LoadList() 方法? LoadList() 将从数据库填充列表框。

最佳答案

做这样的事情

if( chkBox.Checked )
    ProcessList();
else
    ProcessOne();

编写函数来做你想做的事

更新

为了避免重复处理代码,你可以这样做

public void ProcessList()
{
    foreach( var item in list )
        ProcessOne( item );
}

关于选中复选框时实现 foreach 循环的 C# 逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3408190/

相关文章:

Java foreach 循环 : for (Integer i : list) { . .. }

c# - 使用异步等待在 ForEach 中获取 "The connection does not support MultipleActiveResultSets"

c++ - 使用 for_each 函数显示每个容器元素

c# - 在C#和Java中计算CRC32校验和有什么区别吗?

c# - 如何在 Silverlight 中为事物制作可重复的背景?

c# - 显示开机画面

c# - 为什么许多 WPF 类将 boolean 值存储为枚举标志?

javascript - 在 forEach() 中创建方法;

c# - 防止重入并确保为某些操作获取锁的正确方法是什么?

powershell - Powershell循环获取邮箱