Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / подскажите как обратиться к свойству по имени / 14 сообщений из 14, страница 1 из 1
07.04.2013, 11:08
    #38215862
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
привет
есть несколько вложенных классов
как обратиться к свойству по имени если путь содержит в себе несколько промежуточных классов
что то типа
A.B.C.color=red
как обратиться к A.color знаю - а вот с вложенными неполучается
...
Рейтинг: 0 / 0
07.04.2013, 11:39
    #38215884
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fx,

На вскидку - проверьте модификаторы доступа к промежуточным классам. Ломовой прием - сделать все public
...
Рейтинг: 0 / 0
07.04.2013, 11:41
    #38215887
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Cat2,

все и так публик
...
Рейтинг: 0 / 0
07.04.2013, 13:05
    #38216001
defragmentator
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fx,

чтобы обратиться к одноимённому свойству или методу родительского класса, используй base
...
Рейтинг: 0 / 0
07.04.2013, 13:09
    #38216005
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fxCat2,

все и так публик
А свойства внутри классов?
...
Рейтинг: 0 / 0
07.04.2013, 13:16
    #38216015
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Cat2Alexander_fxCat2,

все и так публик
А свойства внутри классов?Зачем гадать, пусть автор код покажет.
...
Рейтинг: 0 / 0
07.04.2013, 13:25
    #38216026
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
skyANAЗачем гадать, пусть автор код покажет.
+1
Но не все портянки, а объявления
...
Рейтинг: 0 / 0
07.04.2013, 13:51
    #38216044
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Class a
    Public Property mb As New b
End Class
Public Class b
    Public Property mc As New c
End Class
Public Class c
    Public Property data As Integer
End Class




хочется сделать a.b.c.data=1
но не в дебаге а в реалтайме через рефлексию или биндинг какой нить
тоесть у меня есть строка с путем к проперти и надо присвоить этому проперти значение
...
Рейтинг: 0 / 0
07.04.2013, 14:04
    #38216060
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fx
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Class a
    Public Property mb As New b
End Class
Public Class b
    Public Property mc As New c
End Class
Public Class c
    Public Property data As Integer
End Class




хочется сделать a.b.c.data=1
но не в дебаге а в реалтайме через рефлексию или биндинг какой нить
тоесть у меня есть строка с путем к проперти и надо присвоить этому проперти значениеДак надо через экземпляр обращаться, а не через класс (сразу прощения за мой VB):
Код: vbnet
1.
2.
3.
Dim ma As New a

ma.mb.mc.data = 1
...
Рейтинг: 0 / 0
07.04.2013, 14:15
    #38216067
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
skyANAAlexander_fx
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Class a
    Public Property mb As New b
End Class
Public Class b
    Public Property mc As New c
End Class
Public Class c
    Public Property data As Integer
End Class




хочется сделать a.b.c.data=1
но не в дебаге а в реалтайме через рефлексию или биндинг какой нить
тоесть у меня есть строка с путем к проперти и надо присвоить этому проперти значениеДак надо через экземпляр обращаться, а не через класс (сразу прощения за мой VB):
Код: vbnet
1.
2.
Dim ma As New a
ma.mb.mc.data = 1



видимо я не так популярно обяснил

есть строка которая указывает на путь к свойству
путь включает в себя несколько вложенных классов - тоесть путь не у свойству текущего класса
как получить ссылку на свойство и получить его значение или применить новое
dim pi As Reflecton.PropertyInfo = Me.GetType().GetProperti("a.b.c.data")
это не работает
...
Рейтинг: 0 / 0
07.04.2013, 14:26
    #38216078
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fx, я Вас не понимаю. Вы писали, что:Alexander_fxкак обратиться к A.color знаю
И как же Вы это делаете? Судя по Вашему коду, создаёте экземпляр класса A и обращаетесь к свойству экземпляра.
...
Рейтинг: 0 / 0
07.04.2013, 15:48
    #38216114
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
это работает

dim mc as new c
dim pi As Reflecton.PropertyInfo = mc.GetType().GetProperty("data")


а вот это нет

dim mа as new а
dim pi As Reflecton.PropertyInfo = mа.GetType().GetProperty("a.b.c.data")
...
Рейтинг: 0 / 0
07.04.2013, 17:16
    #38216195
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
Alexander_fx, вот так будет работать через биндинг:
Код: vbnet
1.
textBox.DataBindings.Add("Text", ma, "mb.mc.data")

Чтобы достать через рефлексию, надо код немного посложнее Вашего написать.
...
Рейтинг: 0 / 0
07.04.2013, 17:42
    #38216216
Alexander_fx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как обратиться к свойству по имени
skyANAAlexander_fx, вот так будет работать через биндинг:
Код: vbnet
1.
textBox.DataBindings.Add("Text", ma, "mb.mc.data")

Чтобы достать через рефлексию, надо код немного посложнее Вашего написать.

DataBindings биндится на dependincyproperty
ну дык посложнее так посложнее- оттого и вопрос
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / подскажите как обратиться к свойству по имени / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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