Я пытаюсь изучить приложения для программирования для универсальной платформы Windows. В настоящее время я работаю с ListView
, и я определяю его макет в <DataTemplate>
, но код - один беспорядок. Есть ли способ определить <DataTemplate>
в отдельной папке? Я обыскал сеть, но я не смог найти решение. Не могли бы вы мне помочь? Благодарю.ListView DataTemplate в отдельной папке
ответ
Я бы всегда рекомендовал создать ResourceDictionary для такого рода вещей. Вот пример настройки:
Создать папку Ресурсы> Добавить> Новый пункт> Ресурсный словарь "Templates.xaml"
В вашем App.xaml добавить
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/Templates.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
В Templates.xaml вы можете добавить любой шаблон вы хотите, например, так:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:thestory.Resources">
<DataTemplate x:Key="ListItemTemplate">
</DataTemplate>
Теперь вы можете ссылайтесь на этот шаблон, где вам это нужно, используя {StaticResource ListItemTemplate}
Удачи!
PS: Я бы на самом деле также рекомендую делать то же самое для стилей и других приложений широких ресурсов, таких как размеры шрифтов, кисти, фоны и т.д.
Он работает, спасибо ... Но у меня есть кнопка внутри этого шаблона с событием onClick, которое не вызывается сейчас. Не могли бы вы сказать, почему? Спасибо :) – miskohut
Используйте Command и ViewModel вместо onClick в коде позади. –
В datatemplate.xaml определить DataTemplate:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<DataTemplate>
</DataTemplate>
</ResourceDictionary>
В UserControl см. таблицу данных:
<UserControl
x:Class="<assemblyName>.Themes.MyUserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:PerpetuumSoft.DataManager.UniApp.UI.Themes"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ms-appx:///<AssemblyName>/Themes/DataTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
</Grid>
</UserControl>
- 1. `Assembly.Load` в отдельной папке
- 2. заполнение ListView в DataTemplate
- 3. DataTemplate в listview
- 4. Функция запуска в отдельной папке
- 5. Сформировать Entitities в отдельной папке
- 6. ListView DataTemplate связывания
- 7. ListView с DataTemplate - java.lang.reflect.InvocationTargetException
- 8. ListView DisplayMemberBinding vs. DataTemplate
- 9. Как найти ListView в DataTemplate?
- 10. BindingGroup в ListView с DataTemplate
- 11. Зачем использовать DataTemplate в ListView?
- 12. Группа Radio Button в DataTemplate ListView
- 13. Xamarin Forms - Multiple DataTemplate ListView
- 14. Listview DataTemplateSelector передать параметр DataTemplate
- 15. Связывание SelectedItem ListView внутри DataTemplate
- 16. Изменения внутри WPF ListView DataTemplate
- 17. ListView DataTemplate, ControlTemplate и стиль
- 18. Listview DataTemplate Binding возвращает ошибку
- 19. wp8.1 ListView DataTemplate с сеткой
- 20. Как активировать JS-файл в отдельной папке
- 21. Заявление SQL, хранящееся в отдельной папке
- 22. Запись unittest и сохранение в отдельной папке
- 23. файлов Создание зависимостей в отдельной папке
- 24. Как сохранить изображение в отдельной папке
- 25. Сохранение файлов журнала PIG в отдельной папке
- 26. Как сохранить изображение в отдельной папке
- 27. Как установить библиотеки Lua в отдельной папке
- 28. TFS Получить конкретную версию в отдельной папке
- 29. Как разместить файлы jsp в отдельной папке?
- 30. Развертывание приложения RoR в отдельной папке
Как выглядит ваш DataTempalte? Вы можете, например, определить UserControl, а затем просто ссылаться на него в ресурсах. Вы можете определить * DataTemplate * в отдельном файле ресурсов, а затем объединить словари в ресурсы app/page/listview. – Romasz