|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
У меня есть объект ( класс) и мне нужно привязать его к айтему в листвъю. Причем в листвъю реализован драг-дроп то есть айтемы могут меняться местами, соответственно объект не должен терять связь с айтемом. Самое умное что мне пришло в голову это создать айтем с ключем и Dictionary. Код: c# 1. 2. 3. 4.
Вроде все работает - создается,удаляется. Единственно что не понятно по какому алгоритму создавать уникальный ключ. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.01.2013, 11:49 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7, не понял чего Вы делаете, если нужно просто привязать объект к итему - у итема есть get;set; property Tag - туда можно писать любой объект. Код: c# 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2013, 05:15 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
В принципе можно использовать и таг. Вопрос как генерировать уникальный ключ который свяжет айтем с экземпляром класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2013, 17:28 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7, чего тут рассуждать-то? Читаем документацию на свойство Control.Tag и присваиваем тагу ссылку на объект. Зачем какие-то ключи генерировать? Вам и пример уже писали: Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2013, 17:56 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
skyANAjenya7, чего тут рассуждать-то? Читаем документацию на свойство Control.Tag и присваиваем тагу ссылку на объект. Зачем какие-то ключи генерировать? Вам и пример уже писали: Код: c# 1.
Я что-то не совсем понимаю. Я могу создать экземпляр класса Test test = new Tets() и потом передать его как ссылку в таг? Нет я конечно понимаю что таг он тоже человек, то есть объект, но все же... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 01:25 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7, Да, можете. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 04:37 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7Я что-то не совсем понимаю. Я могу создать экземпляр класса Test test = new Tets() и потом передать его как ссылку в таг? Нет я конечно понимаю что таг он тоже человек, то есть объект, но все же...Вам бы базовые знания подтянуть, вместо того, чтобы оперировать понятиями "таг он тоже человек". Код: c# 1.
Тут Вы создаёте экземпляр класса (объект), и ссылку на него помещаете в переменную test. Код: c# 1.
Тут Вы копируете ссылку на объект в свойство Tag. В C# используется преимущественно ссылочно-объектная модель. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 10:39 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
А ну понятно - класс он ведь ссылочный тип, передаем адресс. Тогда воникает другой вопрос. А как по клику на айтеме отобразить поля обекта в контролах? Скажем textBoxPrec.Text = test.Precondition; ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:53 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7, Код: c# 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:59 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
Большое спасибо! И еще один вопрос в примере listViewTests.Items[0].Tag = key; мы предполагаем , что знаем индекс айтема. Но если я создаю айтем Код: c# 1. 2.
я не могу выбрать айтем по его лэйбл: Код: c# 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 14:27 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
jenya7, попробуйте так: Код: c# 1. 2.
И почитайте документацию по классу ListView.ListViewItemCollection , там рассказывается и о методе(ах) Add и о получении элемента по ключу (имени). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 16:31 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
больное спасибо! буду пробовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 17:23 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
Мда...и тут я возращаюсь к своему первому вопросу - как присваивать имена? Допустим первый Код: c# 1. 2.
Какой будет второй? Name = "MyName1"? Name = "MyName01"? Вопрос нужно ли уникальное имя. Допустим у меня уже есть айтем с таким именем "MyName". Тогда listViewTests.Items["MyName"].Tag = key; это к какому айтему обращение? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 19:24 |
|
Привязать объект к item в ListView.
|
|||
---|---|---|---|
#18+
Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2013, 09:20 |
|
|
start [/forum/topic.php?fid=20&fpage=179&tid=1405324]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 333ms |
total: | 476ms |
0 / 0 |