Universal Windows Platform (UWP)
A Microsoft platform for building and publishing apps for Windows desktop devices.
3,015 questions
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Hello,
I want to implement Objects Group something similaiar to GeometryGroup but on my own.
I created such code in c#
namespace MyNamespace
...
public class MyObjectGroup
{
public List<MyBaseClass> Children {get; set;}
}
public Class MyBaseClass
{
}
public Class MyClass1 : MyBaseClass
{
string MyProperty1 {get; set;}
}
public Class MyClass2 : MyBaseClass
{
int MyProperty2 {get; set;}
}
...
Next in c# I want to use such syntax
...
xmlns:local="using:MyNamespace"
...
<Image Name="AAAA">
<Image.Resources>
<local:MyObjectGroup x:Key="XKMOG">
<local:MyClass1 MyProperty1="AAAA"/>
<local:MyClass2 MyProperty2="4"/>
</MyObjectGroup>
<Image.Resources>
</Image>
In my definition i can put MyObjectGroup to resources and app could be compiled, but If I add objects to MyObjectGroup - XAML reports an error:
"Class MyObjectGroup does not support direct content"
How to properly define MyObjectGroup, that could work. It works similiar to GeometryGroup
<GeometryGroup x:Key="GG">
<RectangleGeometry></RectangleGeometry>
<EllipseGeometry></EllipseGeometry>
</GeometryGroup>
[Windows.UI.Xaml.Markup.ContentProperty(Name = nameof(Children))]
public class MyObjectGroup
{
public List<MyBaseClass> Children
{
get => _Children ?? (_Children = new List<MyBaseClass>());
set => _Children = value;
}
private List<MyBaseClass> _Children;
}