powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Наследовать Context Menu
10 сообщений из 10, страница 1 из 1
Наследовать Context Menu
    #32777132
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача такая: надо чтобы каждый элемент меню имел свойство Tag.
Если есть подобный пример или ссылка, покажите пожалуйста.
Понимаю, что надо унаследовать элемент, котрый включается в коллекцию меню. Вопрос в том, чтобы она (коллекция) ссылалась на UserControl.
Наследованные контролы создавать научился и они работают, с контролом, содрежащим коллекцию пока неумею обращаться и в моих книгах ответ не могу найти.
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777141
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача такая: надо чтобы каждый элемент меню имел свойство Tag.
Если есть подобный пример или ссылка, покажите пожалуйста.
Понимаю, что надо унаследовать элемент, котрый включается в коллекцию меню. Вопрос в том, чтобы она (коллекция) ссылалась на UserControl.
Наследованные контролы создавать научился и они работают, с контролом, содрежащим коллекцию пока неумею обращаться и в моих книгах ответ не могу найти.
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777197
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
А в чем, собственно, проблема?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
public class MyMenuItem : MenuItem
{
   private object tag = null;
   public object Tag
   {
      get{return tag;}
      set{tag = value;}
   }
}

MyMenuItem item = new MyMenuItem();

ContextMenu menu = new ContextMenu();

menu.MenuItems.Add((MenuItem)item);

((MyMenuItem)menu.MenuItems[0]).Tag = "Tag";
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777210
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WorobjoffЗадача такая: надо чтобы каждый элемент меню имел свойство Tag.
Если есть подобный пример или ссылка, покажите пожалуйста.
Понимаю, что надо унаследовать элемент, котрый включается в коллекцию меню. Вопрос в том, чтобы она (коллекция) ссылалась на UserControl.
Наследованные контролы создавать научился и они работают, с контролом, содрежащим коллекцию пока неумею обращаться и в моих книгах ответ не могу найти. Не все так хорошо, как хотелось бы. В случае меню MS дизайнер меню не понимает другие типы меню, кроме своего родного MenuItem, увы.
П.э. советую посмотреть на работу с IExtenderProvider - позволяет расширять свои компоненты новыми свойствами.

PS: если меню создаются динамически, то тут проблем нет - просто наследуйтесь от MenuItem, добавляете тэг и все
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777221
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777706
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дизайнер как раз понимает MyMenuItem.Tag. Если переписать тип в "Windows Form Designer generated code"

Унаследованный ContextMenu в ToolBox не появляется :-(
Похоже копать MenuItemsCollection бесполезно...
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777743
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WorobjoffДизайнер как раз понимает MyMenuItem.Tag. Если переписать тип в "Windows Form Designer generated code"
Вот именно. Если переписать. А ведь по хорошему дизайнер должен был бы понимать любой объект, имплементирующий некоторый интерфейс. И позволять с ним работать без ручного исправления Windows Form Designer generated code.

П.э. я и сказал о IExtenderProvider
С помощью него вы можете в дизайн тайме нарисовать свое меню и в дизайн тайме же выставить ему Tag (прямо в коллекции свойств)
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32777772
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey KudinovП.э. я и сказал о IExtenderProvider
С помощью него вы можете в дизайн тайме нарисовать свое меню и в дизайн тайме же выставить ему Tag (прямо в коллекции свойств) Вот что я имел ввиду. LocalizationID - это Tag фактически.
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32778049
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где можно прочитать про IExtenderProvider?
В MSDN - совсем мало.
...
Рейтинг: 0 / 0
Наследовать Context Menu
    #32778057
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WorobjoffГде можно прочитать про IExtenderProvider?
В MSDN - совсем мало.
http://www.codeproject.com/dotnet/iextenderprovider.asp
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Наследовать Context Menu
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]