1

当我在 Silverlight 中的标签页上放置一个控件时,该控件向下放置 ~10 像素,向右放置 ~10 像素。例如,以下 xaml:

<System_Windows_Controls:TabControl x:Name=TabControlMain Canvas.Left="0" Canvas.Top="75" Width="800" Height="525" Background="Red" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" Padding="0" Margin="0">
        <System_Windows_Controls:TabItem Header="Test" VerticalContentAlignment="Top" BorderThickness="0" Margin="0" Padding="0" HorizontalContentAlignment="Left">
            <ContentControl>
                <Grid Width="400" Height="200" Background="White"/>
                </ContentControl>
        </System_Windows_Controls:TabItem>    
</System_Windows_Controls:TabControl>

将产生:

替代文字

如何将内容定位在 0,0?

4

4 回答 4

2

检查 TabItem 的控件模板,它可能有一些默认的 Margin 10。只是猜测

于 2008-09-21T02:25:03.490 回答
1

看看控件模板,它有那个大小的边距。使用 blend 修改选项卡控件模板的副本。

于 2008-09-21T06:33:01.773 回答
1

您还可以为内容添加负边距。我发现该值为9像素...

<System_Windows_Controls:TabControl x:Name=TabControlMain Canvas.Left="0" Canvas.Top="75" Width="800" Height="525" Background="Red" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" Padding="0" Margin="0">
        <System_Windows_Controls:TabItem Header="Test" VerticalContentAlignment="Top" BorderThickness="0" Margin="0" Padding="0" HorizontalContentAlignment="Left">
            <ContentControl>
                <Grid Width="400" Height="200" Margin="-9,-9,-9,-9" Background="White"/>
                </ContentControl>
        </System_Windows_Controls:TabItem>    
</System_Windows_Controls:TabControl>
于 2008-10-01T19:47:41.190 回答
0

在花了几个小时鬼混这个问题之后。布赖恩是完全正确的。当前版本的VS不允许更改TabControl的模板,但是可以使用Blend来完成,而且模板上有一个margin。这样做的主要缺点是 XAML 文件将不再可从 Visual Studio 预览。

于 2008-09-21T11:59:00.897 回答