我一直在通过编程向工具条添加项目,但问题是我需要向其添加checked属性。不知道该怎么做。 这是代码:
toolStripMenuItemAudioSampleRate.DropDownItems.Add("8 kHz", null, new EventHandler(mnuAudioSamplingRate_Click));
toolStripMenuItemAudioSampleRate.Checked = (samplingRate == 8000);//Checks if the there is no vid device
现在我知道它会工作错误,因为我已将checked属性添加到toolStripMenuItemAudioSampleRate
不是8 kHz
。我正在尝试将此属性添加到动态添加的项目中。
提前致谢。
答案 0 :(得分:5)
不是使用Add(String, Image, EventHandler)
辅助方法创建下拉项,而是创建自己的ToolStripMenuItem
,将其设置为选中,然后将其添加到列表中。
ToolStripMenuItem item = new ToolStripMenuItem("8 kHz", null, new EventHandler(mnuAudioSamplingRate_Click));
item.Checked = (samplingRate == 8000);
toolStripMenuItemAudioSampleRate.DropDownItems.Add(item);
答案 1 :(得分:2)
要使this代码变得更加漂亮,我建议删除new EventHandler
,它总是多余的,并使用对象初始值设定项:
toolStripMenuItemAudioSampleRate.DropDownItems.Add (
new ToolStripMenuItem ("8 kHz", null, mnuAudioSamplingRate_Click) {
Checked = (samplingRate == 8000)
});
答案 2 :(得分:0)
toolStripMenuItemAudioSampleRate.DropDownItems["8 kHz"].Checked = (samplingRate == 8000)
那可能会做你想要的。在某个地方坚持这些动态添加的项目可能是一个好主意,这样你就不必使用这种丑陋的语法。
答案 3 :(得分:-1)