我有两个DropDownButtons(ToolStripDropDownItem) - btn01和btn02
我希望btn02成为btn01项目的排序列表。
我现在有了。
List<string> list = new List(btn01.DropDownItems); // I want to create a list
list.Sort();
btn02.DropDownItems = list; // sorted list should be btn02 items.
第一行和第三行有语法错误。
答案 0 :(得分:1)
我认为第一行的错误是因为DropDownItems不是字符串的集合,试试这个:
var list = DropDownItems.ToList();
如果你想要它们作为字符串,你可以这样做:
var list = new List<string>();
foreach(var item in DropDownItems)
{
list.Add(item.ToString());
}
什么是DropDownItems?您能否添加一些有关此控件的更多信息?
答案 1 :(得分:1)
这样的事情会起作用。
这不是最漂亮的代码,可以减少许多行,但我想确保它很清楚。
var unorderedList = new List<ToolStripItem>();
for (int i = 0; i < toolStripDropDownButton1.DropDownItems.Count;i++ )
{
unorderedList.Add(toolStripDropDownButton1.DropDownItems[i]);
}
var orderedList = unorderedList.OrderBy(l => l.Text).ToList();
toolStripDropDownButton2.DropDownItems.AddRange(orderedList.ToArray());