我无法放置或设置我的用户控件的背景或边框

时间:2013-04-13 19:54:04

标签: xaml

我为我的xaml项目创建了一个简单的用户控件,但正如你从我的图像中看到的那样,我似乎无法做某些事情。

enter image description here

忽略红线,控制器的大小以说明其大小。

它的位置应该在屏幕的中间位置:

<Client:TileMenu HorizontalAlignment="Center" VerticalAlignment="Center" Name="TileOverlayMenu" Background="Azure" BorderBrush="Aquamarine" BorderThickness="3" />

正如您所看到的,它的背景颜色应为“Azure”,蓝色边框为3。

为什么会这样?

在后台我有一个画布:

<Grid x:Name="ContentPanel" Grid.Row="0" Margin="12,0,12,0">

            <Canvas Name="GameCanvas">

                <Canvas.RenderTransform>
                    <CompositeTransform x:Name="CanvasRenderTransform" />
                </Canvas.RenderTransform>

                <toolkit:GestureService.GestureListener>
                    <toolkit:GestureListener DragStarted="GestureListener_DragStarted" DragDelta="GestureListener_DragDelta" Tap="GestureListener_Tap" PinchStarted="GestureListener_PinchStarted" PinchDelta="GestureListener_PinchDelta"/>
                </toolkit:GestureService.GestureListener>

            </Canvas>

            <Client:TileMenu HorizontalAlignment="Center" VerticalAlignment="Center" Name="TileOverlayMenu" Background="Azure" BorderBrush="Aquamarine" BorderThickness="3" />

        </Grid> 

至于我的第三个问题,在画布中使用事件导致“移动”滑块被中断,使我每次只能推动它一点: - /

1 个答案:

答案 0 :(得分:1)

如果TileMenu是UserControl,则必须在UserControl的XAML中的顶级容器上设置这些属性,因为这定义了控件的整个可视结构。

但是,您可以绑定到UserControl中的相应值:

<UserControl x:Class="YourNamespace.TileMenu" ...
             x:Name="tileMenu">
    <Border BorderBrush="{Binding BorderBrush, ElementName=tileMenu}"
            BorderThickness="{Binding BorderThickness, ElementName=tileMenu}">
        <Grid>
            ...
        </Grid>
    </Border>
</UserControl>