overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
我想检查items = File
.ReadLines(RecentFiles)
.Select(line => new ToolStripMenuItem()
{
Text = line
})
.ToArray();
recentFilesToolStripMenuItem.DropDownItems.AddRange(items);
如果不存在则添加但如果存在则不添加。
答案 0 :(得分:1)
你基本上有两个集合:items
& recentFilesToolStripMenuItem.DropDownItems
使用Linq
,您应该可以 一个Except()
Where()
来仅添加两个集合之间的差异。
未经测试。
<德尔> recentFilesToolStripMenuItem.DropDownItems.AddRange(items.Except(recentFilesToolStripMenuItem.DropDownItems)); 德尔>
经过测试
recentFilesToolStrip.DropDownItems.AddRange(
items
.Where(i => !recentFilesToolStrip.DropDownItems
.OfType<ToolStripMenuItem>()
.Select(t => t.Text).Contains(i.Text)
).ToArray()
);
SLaks评论指的是执行以下操作:
recentFilesToolStripMenuItems.DropDownItems.Clear();
recentFilesToolStripMenuItems.DropDownItems.AddRange(items);