WPF容器控制

时间:2012-05-06 11:32:43

标签: wpf xaml wpf-controls

我有一个用作控件的用户控件,它看起来如下:

<ContentControl ... >
    <Grid>
        <Rectangle RadiusX="8" RadiusY="8">
            <Rectangle.Fill>
...
            </Rectangle.Fill>
        </Rectangle>

...

        <ContentPresenter />
    </Grid>
</ContentControl>

当我在窗口中使用它时,控件的内容被替换而不是放入ContentPresenter:

<XWpf2:MyContainer Margin="40">
        <ListView Margin="16" />
</XWpf2:MyContainer>

什么是正确的方法,这里有什么问题?

1 个答案:

答案 0 :(得分:2)

您将Content设置为Grid,然后使用Content覆盖ListView。如果您希望保留该结构,则需要将其指定为ContentControl.Template

当然MyContainer如果是UserControl,如果你设置Content,然后用ListView覆盖整个ContentControl,就可以说同样的事情。 {{1}}也会消失。