MediumTile.xaml
, вероятно, существует в каком-то пространстве имен.
Вы можете найти пространство имен UserControl в верхней части файла рядом с объявлением x: Class.
Обычно это будет выглядеть как
x:Class="MyProject.UserControls.MediumTile"
если ваш проект настроен нормально.
Если вы посмотрите на MediumTile.xaml.cs
, вы должны видеть пространство имен, как так
namespace MyProject.UserControls
{
public partial class MediumTile : UserControl
...
Во-первых, вам нужно будет ссылаться на свой подпроект.
Предполагая, что у вас есть структура проекта, как так ...
CurrentProject/
-MyPage.xaml
SubProject/
-MediumTile.xaml
правой кнопкой мыши решение в Visual Studio и нажмите Properties
.
В разделе «Свойства» выберите Project Dependencies
.
Выберите «Текущий проект» в раскрывающемся меню.
В поле поля Depends On
выберите подпроект.
Нажмите на StartUp Project
в боковой панели.
Удостоверьтесь, что Single StartUp Project
указывает на CurrentProject. Если нет, установите его.
Теперь вы закончили настройку, теперь вам нужно будет использовать MediumTile.xaml
.
Чтобы использовать MediumTile UserControl в другом файле XAML, вам нужно будет объявить
Xmlns: customControls = "CLR-пространств имен: MyProject.UserControls"
внутри заголовок страницы и вызов
<ListBox.ItemTemplate>
<DataTemplate>
<customControls:MediumTile/>
...
Чтобы использовать этот UserControl в другом файле CS, вам нужно будет импортировать пространство имен
с использованием MyProject.UserControls;
в верхней части страницы и ссылки на элемент управления, как так (в зависимости от конструктора вашего UserControl в),
MediumTile mediumTile = new MediumTile()
Об LayoutRoot
проблем, вы можете просто установить цвет фона непосредственно в UserControl. UserControl наследует элемент Control, у которого уже есть свойство Background.
Просто дайте ему имя. например: –
, конечно, у него уже есть это имя – user3168511
Ах, это отдельный проект. Вы можете открыть элемент управления, создав свойство: public Grid Layout {get {return LayoutRoot; } } –