powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Динамические имена контролов в ListBox.ItemTemplate
8 сообщений из 8, страница 1 из 1
Динамические имена контролов в ListBox.ItemTemplate
    #37670180
goodw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Необходимо задать динамически задавать имя контрола в шаблоне ListBox.ItemTemplate

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<ListBox Name="lstParams" HorizontalContentAlignment="Stretch">
    <ListBox.ItemTemplate>
         <DataTemplate>
              <DockPanel Visibility="collapsed" LastChildFill="True" Grid.ColumnSpan="3" Grid.Column="1" Grid.Row="1" Name="{Binding Path=Name}">
                   <StackPanel DockPanel.Dock="Bottom" HorizontalAlignment="Right" Orientation="Horizontal">
                        <Button Height="23">Сохранить</Button>
                        <Button Margin="2,0,0,0" Height="23">Отмена</Button>
                   </StackPanel>
              </DockPanel>
         </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>



Возникает такая ошибка:

MarkupExtensions are not allowed for Uid or Name property values, so '{Binding Path=Name}' is not valid.



Можно ли как-то задавать имена контролам динамически в шаблонах данных?
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670362
goodw,

Вы хотите делать привязку к Name?

Даже представить боюсь, зачем вам это нужно.
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670399
goodw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне надо как-то обратиться к элементу внутри шаблона при клике на другой элемент внутри того же шаблона.
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670411
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goodw,

в качестве шаблона можно использовать свой userControl там и сделать обработку.
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670429
goodw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, но идея мне кажется несколько громоздкой. Есть ли какие-то варианты попроще: обратиться в моем случае к конкретной DockPanel?
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670575
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goodw,

у ListBox-а есть возможность найти контейнер для указанной записи
авторlistBox.ItemContainerGenerator.ContainerFromIndex(3)
дальше используете VisualTreeHelper и достаете свой вожделенный DockPanel.
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670592
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goodw,

в шаблоне прицепить обработчик к нужному событию, в его sender будет ссылка на контрол, а родителем для него будет конкретная DockPanel итема. Потом через VisualTreeHelper найти вторую кнопку или что вам там надо.
...
Рейтинг: 0 / 0
Динамические имена контролов в ListBox.ItemTemplate
    #37670594
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя и TreeHelper не нужен, просто в списке потомков. (Childs если не путаю)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Динамические имена контролов в ListBox.ItemTemplate
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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