Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在循环遍历集合时每行仅显示3个表格单元格_C#_Asp.net - Fatal编程技术网

C# 如何在循环遍历集合时每行仅显示3个表格单元格

C# 如何在循环遍历集合时每行仅显示3个表格单元格,c#,asp.net,C#,Asp.net,我在一个集合中循环,并生成一个htmltable 我希望每行最多只显示3个表格单元格 我需要一些逻辑方面的帮助 到目前为止,我的代码每行显示1项 HtmlTable table = new HtmlTable(); HtmlTableRow row; HtmlTableCell cell; for(int x = 0; x < userList.Count; x++) { row = HtmlTableRow(); cell = HtmlTableCell(); /

我在一个集合中循环,并生成一个htmltable

我希望每行最多只显示3个表格单元格

我需要一些逻辑方面的帮助

到目前为止,我的代码每行显示1项

HtmlTable table = new HtmlTable();
HtmlTableRow row;
HtmlTableCell cell;

for(int x = 0; x < userList.Count; x++)
{
   row = HtmlTableRow();

   cell = HtmlTableCell();

   // other stuff

   row.Controls.Add(cell);
   table.Controls.Add(table);
}
HtmlTable table=新的HtmlTable();
HtmlTableRow行;
HtmlTableCell细胞;
for(intx=0;x
我看不出你的问题是什么?如果需要3个单元格,请添加3个单元格

cell = HtmlTableCell();
//set cell 1 data
row.Controls.Add(cell);
cell = HtmlTableCell();
//set cell 2 data
row.Controls.Add(cell);
cell = HtmlTableCell();
//set cell 3 data
row.Controls.Add(cell);
如果你想根据“其他东西”中的数据应用一些特定的逻辑,那么你需要告诉我们更多关于这些数据的信息

根据其他答案,我想我现在明白了。那么每个用户控件都是一个单元格?如果是这样,你可以这样做

row = HtmlTableRow();
int cellCount = 0;
for(int x = 0; x < userList.Count; x++)
{
   cell = HtmlTableCell();

   // other stuff

   row.Controls.Add(cell);

   cellCount++;

   if(cellCount == 3)
   {
      cellCount = 0;
      table.Controls.Add(row);
      row = HtmlTableRow();
   }
}
row=HtmlTableRow();
int-cellCount=0;
for(intx=0;x
您可以这样尝试:

HtmlTable table = new HtmlTable();
HtmlTableRow row;
HtmlTableCell cell;

for(int x = 0; x < userList.Count; x++)
{
row = HtmlTableRow();

cell = HtmlTableCell();


// other stuff

 row.Controls.Add(cell);
 if((x+1) % 3 == 0)
{

 table.Controls.Add(row);
}
}
HtmlTable table=新的HtmlTable();
HtmlTableRow行;
HtmlTableCell细胞;
for(intx=0;x
试试这个:

HtmlTable table = new HtmlTable();
HtmlTableRow row;
HtmlTableCell cell;

for(int x = 0; x < userList.Count; x++)
{
            if(x%3 == 0)
            {
                row = new HtmlTableRow();
                table.Controls.Add(row);
            }
   cell = new HtmlTableCell();
   row.Controls.Add(cell);
}

for(int x = 0; x < userList.Count%3; x++)
{
   cell = new HtmlTableCell();
   row.Controls.Add(cell);
}
HtmlTable table=新的HtmlTable();
HtmlTableRow行;
HtmlTableCell细胞;
for(intx=0;x