我有两个Telerik RadComboBox控件,同时使用以下代码添加项目
foreach (var gate in Enum.GetNames(typeof(AuthorizedGates)))
{
var item = new RadComboBoxItem(gate, Convert.ToString((int)Enum.Parse(typeof(AuthorizedGates), gate)));
ddlTelerik1.Items.Add(item);
ddlTelerik2.Items.Add(item);
}
在运行时,第一个组合框没有项目,即项目没有添加到项目中,而项目被添加到第二个项目!
我使用以下代码
为ASP.NET DropDownList尝试了相同的操作foreach (var gate in Enum.GetNames(typeof(AuthorizedGates)))
{
var item = new ListItem(gate, Convert.ToString((int)Enum.Parse(typeof(AuthorizedGates), gate)));
ddlAspNet1.Items.Add(item);
ddlAspNet2.Items.Add(item);
}
它正常工作,并且项目已添加到它们中。
任何想法可能是这种奇怪行为背后的原因?
答案 0 :(得分:1)
不同之处在于RadComboBox项是一个类似于RadComboBox或DropDownList控件的控件,因此它是一个间接从WebControl继承的类,并且在页面上只能有一个实例。它不像ListItem(继承自Object)。