您能举例说明如何创建自定义复合控件(在Silverlight 4中),该控件直接派生自FrameworkElement。这是一个模型:
public sealed class CompositeImage : FrameworkElement
{
private readonly List<Image> images;
public CompositeImage()
{
images = new List<Image>();
images.Add(new Image { Source = "..." });
images.Add(new Image { Source = "..." });
}
protected override Size MeasureOverride(Size availableSize)
{
throw new NotImplementedException();
}
protected override Size ArrangeOverride(Size finalSize)
{
throw new NotImplementedException();
}
}
答案 0 :(得分:2)
我无法想象任何想要做这种事情的场景。
使用UserControl
或模板化控件。如果没有更好地理解你想要实现的目标,那么它甚至难以提供更多答案。
答案 1 :(得分:1)
如果您希望创建某种“仅图像”面板,我想从FrameworkElement继承是有意义的。从代码示例看,图像列表将被修复?然后你可以在MeasureOverride和ArrangeOverride中编写代码来将它们排出。但正如AnthonyWJones所说,关于你想要实现的目标的更多细节将有助于确定最佳方式。