Я создал пользовательский элемент управления из Gruopbox. Однако для использования в качестве контейнера в представлении я должен создать DependecyProperty
для Content
. Это приводит к ошибке Unhandled Exception has occurred
в VS2017.
Это, однако, происходит только тогда, когда я связываю атрибут Content
в gruopbox с моим новым свойством.
<UserControl
x:Class="Infrastructure.Controls.GroupBox.CollectionBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
x:Name="Form"
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
<GroupBox Content="{Binding Content, ElementName=Form}"/>
</UserControl>
С кодом позади
public new object Content
{
get => (object)GetValue(ContentProperty);
set => SetValue(ContentProperty, value);
}
public new static readonly DependencyProperty ContentProperty = DependencyProperty.Register(nameof(Content), typeof(object), typeof(CollectionBox), new PropertyMetadata(null));
Я попытался использовать FalloutValue
в Привязке к другим элементам управления, так как предположил, что дизайнер не знает, что поместить в контейнер. Тем не менее, ошибка продолжает происходить.
Во время выполнения и в представлении Designer элемент управления выглядит и работает нормально. Просто в его конструкторе я этого не вижу.
Спасибо.