Как разместить содержимое вкладки в Silverlight?

StackOverflow https://stackoverflow.com/questions/109608

  •  01-07-2019
  •  | 
  •  

Вопрос

Когда я размещаю элемент управления на вкладке в 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>

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

alt text

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

Это было полезно?

Решение

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

Другие советы

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

Вы также можете добавить к содержимому отрицательное поле.Я нашел значение 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>

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top