【问题标题】:How do I add an element to the visual tree in Silverlight如何将元素添加到 Silverlight 中的可视化树
【发布时间】:2010-09-19 01:45:15
【问题描述】:

这是我的具体问题:

Xaml:

<local:ShrinkableContentControl x:Name="m_ShrinkableContentControl">
    <Border Background="SkyBlue">
        <Button Click="Button_Click_1" Content="Hello"/>
    </Border>
</local:ShrinkableContentControl>

ShrinkableContentControl 的代码:

[ContentProperty("Shrinkable")]
public class ShrinkableContentControl : FrameworkElement
{
    protected override Size MeasureOverride(Size availableSize)
    {
        return base.MeasureOverride(availableSize);
    }

    protected override Size ArrangeOverride(Size finalSize)
    {
        this.Shrinkable.Arrange(new Rect(0, 0, 100, 100));
        return base.ArrangeOverride(finalSize);
    }

    public FrameworkElement Shrinkable { get; set; }
}

这里的问题是,Shrinkable 是内容,并没有添加到可视化树中,所以什么都不会显示。

谁能告诉我是否有办法将 Shrinkable 添加为可视树中 ShrinkableContentControl 的子项?

谢谢, 亨利

【问题讨论】:

  • 只是为了跟进这个问题。我不想使用面板。我只想强制一个孩子。

标签: silverlight visual-tree


【解决方案1】:

如果你想要一个孩子,听起来你应该从 ContentControl 继承:

表示具有任何类型的单个内容的控件。

只需设置Content 属性

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    相关资源
    最近更新 更多