Элементы управления WPF имеют определенные свойства (UserControl.Resources, UserControl.CommandBindings), в которые могут быть добавлены элементы из XAML декларации пользовательского элемента управления.Пример:
<UserControl ... >
<UserControl.CommandBindings>
...
</UserControl.CommandBindings>
<UserControl.Resources>
...
</UserControl.Resources>
</UserControl>
У меня есть новое свойство списка, определенное в моем пользовательском элементе управления:
public partial class ArchetypeControl : UserControl {
...
public List<Object> UICommands { get; set; }
Я хочу добавить элементы в этот список, как я могу с ресурсами и CommandBindings, но когдаЯ делаю это:
<c:ArchetypeControl.UICommands>
</c:ArchetypeControl.UICommands>
Я получаю сообщение об ошибке "Ошибка 4 Не удалось найти присоединяемое свойство 'UICommands' в типе 'ArchetypeControl'."
Предложения?
-
Учитывая комментарии, я создал тестовый элемент управления, чтобы показать весь код и воспроизвести проблему.Я использую Visual Studio 2010.
<UserControl x:Class="ArchetypesUI.TestControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:ArchetypesUI"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<c:TestControl.TestObject>
</c:TestControl.TestObject>
<Grid>
</Grid>
</UserControl>
-
namespace ArchetypesUI
{
/// <summary>
/// Interaction logic for TestControl.xaml
/// </summary>
public partial class TestControl : UserControl
{
public Object TestObject { get; set; }
public TestControl()
{
InitializeComponent();
}
}
}
Теперь я получаю ошибку «Ошибка 2» Прикрепленное свойство «TestControl.TestObject» не определено в «UserControl».'или один из его базовых классов. "