Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 28.05.2014
Сообщений: 50

Выбор поля класса в свойстве UserControl

18.05.2016, 15:49. Показов 829. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, как в режиме разработки(design-time) указать свойство моего пользовательского элемента (userControl) поле класса.
Вот так сделал выбор Класса - источника данных
C#
1
2
3
4
5
6
7
8
9
[Category("Data")]
        [DefaultValue(null)]
        [AttributeProvider(typeof(IListSource))]
        [Browsable(true)]
        public object DataSource123 {
            get { return this.dataSource123; }
            set { this.dataSource123 = value; TryDataBinding(); }
        
        }
А теперь другим свойством пользовательского элемента я хочу сделать поле выбранного класса.
Если кто знает - подскажите
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.05.2016, 15:49
Ответы с готовыми решениями:

Не работает set в пользовательском свойстве UserControl
Здравствуйте. Сделал свой контрол. Создал ему свойство: public List<int> Values { get ...

Не сохраняются значения в свойстве своего UserControl в режиме конструктора форм, когда я его использую в другом проекте
Ситуация: я создал свой контрол, который содержит TextBox и добавил несколько свойств. Далее я этот свой контрол подключил во втором...

Set в свойстве класса
Здравствуйте! Есть свойство класса: private Map mapObject { get { try {

5
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
19.05.2016, 11:01
goniometr, правильно понял, то так
C#
1
public object X { get { return DataSource123.Y; } }
Но зачем это нужно не понятно, ибо кривой подход
0
1 / 1 / 0
Регистрация: 28.05.2014
Сообщений: 50
19.05.2016, 12:01  [ТС]
нет.. не совсем... мы ж DataSource123.Y изначально не знаем что там. То есть поля Y там может и не быть... а там например поле Z. То есть один из бредовых вариантов, это получение Класса в DataSource123 и через рефлексию получать его поля. Только это всё должно делаться в режиме разработке... а как в режиме разработки выполнить рефлексию для меня пока что загадка...
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
19.05.2016, 14:42
goniometr, это фигня ) Если ты обращаешься к объекту класса при написании кода, то ты знаешь все его открытые свойства. Я не понимаю, зачем тут рефлексия
0
1 / 1 / 0
Регистрация: 28.05.2014
Сообщений: 50
19.05.2016, 15:20  [ТС]
В том то и дело что не знаю.. я пишу свой контрол, у него есть источник данных. Если я его в одном месте буду использовать, у меня источник данных будет class1, если в другом class2. а я в этом контроле хочу сгруппировать элементы по определенному полю... и в первом и втором случае эти поля разные... А ещё вариант, группировку я буду делать не по одному полю, а по списку полей... Понимаю, наворотил, ну сделать надо...
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
20.05.2016, 09:47
goniometr, как-то криво проектируешь. Получается, что ты заранее определяешь в коде из какого класса, какое поле выдёргивать. Для этого не нужна рефлексия, можно просто проверкой и приведением типов обойтись. Но я бы так не делал. Как вариант можно на поле, по которому будет проводиться группировка повесить какой-нибудь свой атрибут и выбирать его, тогда твой контрол сможет отобразить и сгруппировать любой класс, у которого поле имеет атрибут группировки.
Возможно следует покрутить тему с интерфейсами: т.е. группировка проводится всегда по одному полю, которое определено интерфейсом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.05.2016, 09:47
Помогаю со студенческими работами здесь

Как объявить массив в свойстве класса
$cfg = '127.0.0.1'; $cfg = 'root'; ..... class db { public $cfg; public function query() {

Использование имя object в свойстве класса
День добрый. Столкнулся с проблемой: пишу вк бота, он скидывает json на мой сервер. Сам запрос выглядит следующим образом: { ...

Создание своего класса кнопки с использованием наследования от класса UserControl
Ребят, помогите, такая проблема: создаю класс MyButton в C# при помощи наследования от класса UserControl и в классе MyButton переопределяю...

Проверка корректности ввода данных в свойстве экземпляра класса
Привет. Подскажите плз. Если нужно при вводе значения в свойство класса проверить его корректность set ...

Доступ к обьекту - датасету сидящему в свойстве Lookup поля другог датасета
Доброго времени суток. Подскажите как получить адрес объекта, если этот обьект всеголишь свойство другого объекта ? Простое взятие...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru