添加控件时如何随机化控件



我有三个这样的ul:

<ul id="column3" class="column" runat="server"> </ul>
<ul id="column4" class="column" runat="server"> </ul>

<ul id="column5" class="column" runat="server"> </ul>

我想随机添加列表项:

 HtmlGenericControl listItem1 = new HtmlGenericControl("li");
 listItem1.Attributes.Add("class", colors[RandString.Next(0, colors.Length -1)]);
 column3.Controls.Add(listItem1); //here  i wanna to randomize the ul(column3,column4,column5) like i do with the colors

如何做这样的事情。

您可以将这些ul放入数组中

var uls = new[] { column3, column4, column5 };

然后随机选择一个:

var ul = uls[random.Next(0, uls.Length)];
ul.Controls.Add(listItem1);

请注意,您不需要uls.Length - 1,因为在Next方法中上界是独占的。

如果你的意思是随机化ul的内容,你可以简单地使用颜色的int值作为随机定义。

var lists = new [] { column3, column4, column5 };
Random rand = new Random();
for ( int n = 0; n < 10; n++ )
{
   HtmlGenericControl listItem1 = new HtmlGenericControl("li");
   listItem1.Attributes.Add("class", colors[RandString.Next(0, colors.Length -1)]);
   lists[rand.Next(0,lists.Count)].Controls.Add(listItem1);
}

最新更新