c# - 嵌套循环计数器
问题描述
我正在尝试创建一个嵌套循环,它需要一个给定的数字“每张视图”,并根据这个数字,让我们从 (1) 开始计算 00,01,02,03,04,05,06... 现在如果数字是 (2) 将计算 00,00,01,01,02,02 现在数字是 (3) 将计算 00,00,00,01,01,01
我已经尝试了以下代码的许多变体,我粘贴的内容并不是我得到我想要的结果的最接近的,但我脑子很糊,似乎无法弄清楚什么似乎是一个简单的操作。我不能很好地用我的谷歌搜索来找到一个比较。
请查看附件图片以了解我想要做什么。
编辑...表单是 Telerik 的 radGridView
public void ViewsPerSheetChange(object sender, EventArgs e)
{
int numViewsPerSheet = (int)thisForm.numViewsPerSheet.Value;
for (int i = 0; i < numViewsPerSheet; i++)
{
for (int j = 0; j < Models.Count; j++)
{
Models[j].SheetObjModel.SheetNumber = i.ToString().PadLeft(2, '0');
if (j == numViewsPerSheet - 1)
{
break;
}
}
}
thisForm.RefreshDataGrid();
}
解决方案
你几乎拥有它。您在这里并不需要嵌套循环。对工作表编号使用整数除法。我重复相同x
的次数,其中x
每张纸的视图数是多少。
尝试:
public void ViewsPerSheetChange(object sender, EventArgs e)
{
int numViewsPerSheet = (int)thisForm.numViewsPerSheet.Value;
for (int j = 0; j < Models.Count; j++)
{
int i = j/numViewsPerSheet; // 0,0,0,1,1,1,2,2,2... for num=3
Models[j].SheetObjModel.SheetNumber = i.ToString().PadLeft(2, '0');
}
thisForm.RefreshDataGrid();
}
推荐阅读
- batch-file - 如何启动最小化的批处理文件
- xcode - SwiftUI:如何在水平滚动视图中监听鼠标滚轮滚动事件
- python - 在 Python Dash 中将上传的文本文件转换为 DataFrame
- css - 无法获得整页引导轮播中心并安装
- pytorch - 如何将火炬[N,1]和火炬[1,N]相乘?
- tcl - 如何在搜索所有文件夹后删除 TCL 中的特定文本文件(基于名称),而不仅仅是当前目录?
- reactjs - 搜索引擎优化缺少 Gatsby JS 元描述?
- python - Python for循环过早停止
- python - 如何在 .strftime 中将日期和月份大写?
- angular - 以角度打印json对象父子关系