2008-09-20 5 views
1

Когда я устанавливаю элемент управления на вкладке в Silverlight, элемент управления помещается ~ 10 пикселей вниз и ~ 10 пикселей вправо. Например, следующий XAML:Как разместить содержимое закладки в Silverlight?

<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> 

будет производить:

alt text http://i34.tinypic.com/8z1u1t.jpg

Как поместить содержимое в 0,0?

+0

Вниз голосование, потому что только ответы, которые работают, не делают вас счастливыми, это неправильно. Иногда мы, как программисты, остаемся с единственным вариантом, являющимся опцией sucky. –

+0

А? Я не уверен, что понимаю, что вы говорите. Я еще не отметил ответ, хотя и был принят, потому что я сосредоточился на другом проекте и не имел возможности проверить ЛЮБОЙ из ответов. – DaveK

ответ

1

Посмотрите на шаблон управления, он имеет запас этого размера. Используйте сочетание, чтобы изменить копию шаблона элемента управления вкладки.

1

Проверьте шаблон управления вашей TabItem, он может иметь некоторые по умолчанию Маржа 10. Просто догадка

0

Проведя пару часов, обманывая эту проблему. Брайан совершенно прав. Текущая версия VS не позволяет изменять шаблон TabControl, но это можно сделать с помощью Blend, и на шаблоне есть запас. Главный недостаток этого заключается в том, что файл XAML больше не будет доступен для просмотра в Visual Studio.

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> 
Смежные вопросы