Элемент управления верхнего уровня не может быть добавлен в элемент управления Скажите, пожалуйста, как показать ContextMenuStrip в PropertyGrid? Для этого я использую этот код:
public class SaveFileNameEditor : UITypeEditor
{
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.DropDown;
}
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
IWindowsFormsEditorService FileEditor =
provider.GetService(typeof(IWindowsFormsEditorService)) as
IWindowsFormsEditorService;
ContextMenuStrip MenuList = null;
ToolStripMenuItem MenuItem = null;
if (FileEditor != null)
{
MenuList = new ContextMenuStrip ();
MenuItem = new ToolStripMenuItem("Add File...");
MenuList.Items.Add(MenuItem);
MenuItem = new ToolStripMenuItem("Save File ...");
MenuList.Items.Add(MenuItem);
MenuItem = new ToolStripMenuItem("Delete File ...");
MenuList.Items.Add(MenuItem);
FileEditor.DropDownControl(MenuList);
MenuList.Show();
}
return value;
}
}
Но я получаю сообщение об ошибке «Элемент управления верхнего уровня не может быть добавлен к элементу управления» в сети.
FileEditor.DropDownControl(MenuList);