我的 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/