У меня есть ListBox, показывающий данные о сотрудниках, таких как имя, фотография отдела, номер значка и т. Д. Сотрудники могут иметь разные типы, такие как менеджер, персонал, волонтеры. У меня есть 3 отдельных шаблона данных - по одному для каждого типа. Все эти шаблоны показывают в основном одни и те же данные, но представлены по-разному.WPF - Параметры для DataTemplates?
В зависимости от пользователя, зарегистрированного в приложении, номер значка и т. Д., Может быть или не быть видимым. Поэтому у меня есть логические свойства для этого: CanSeePhotos, CanSeeBadgeNumbers и т. Д. Поэтому, если CanSeePhotos == false, все шаблоны данных должны скрывать фотографии.
Мой вопрос: как я могу использовать эти логические свойства внутри своих шаблонов данных для переключения видимости соответствующих элементов? Есть ли способ передать параметры шаблонам данных, когда я возвращаю их из своего TemplateSelector?
Спасибо!
редактировать: следуя идее Рэя, я в конечном итоге делает это:
Visibility="{Binding Source={x:Static local:Global.CanSeePhoto}, Converter={StaticResource BooleanToVisibilityConverter}}"
Если ваш CanSeeBadgeNumber не является свойством данных, но и окружающей среды, возможно, вам придется добавить что-то вроде Source = "{x: Static UserInfo.CurrentUser}" к вашей привязке. Это то же самое, если вы используете триггеры или конвертеры. –
Выражения в привязках XAML! Я ждал этого в течение долгого времени - действительно скучаю по нему со дней Flex. Ждем его! – Grokys
Итак, вы когда-нибудь выпускали его? – BrainSlugs83