Pro Silverlight 3 in C# - Layout
1. Borders
<Border Margin="25" Background="LightYellow"
BorderBrush="SteelBlue" BorderThickness="8" CornerRadius="15">
<Button Margin="10 Content="Click Me"></Button>
</Border>
2.StackPanel
<UserControl x:Class="Layout.SimpleStack"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel Background="White">
<TextBlock Text="A Button Stack"></TextBlock>
<Button Content="Button 1"></Button>
<Button Content="Button 2"></Button>
<Button Content="Button 3"></Button>
<Button Content="Button 4"></Button>
</StackPanel>
</UserControl>
<StackPanel Orientation="Horizontal" Background="White">
3.WrapPanel
<toolkit:WrapPanel Margin="3">
<Button VerticalAlignment="Top" Content="Top Button"></Button>
<Button MinHeight="60" Content="Tall Button"></Button>
<Button VerticalAlignment="Bottom" Content="Bottom Button"></Button>
<Button Content="Stretch Button"></Button>
<Button VerticalAlignment="Center" Content="Centered Button"></Button>
</toolkit:WrapPanel>
4.DockPanel
<toolkit:DockPanel LastChildFill="True">
<Button toolkit:DockPanel.Dock="Top" Content="Top Button"></Button>
<Button toolkit:DockPanel.Dock="Bottom" Content="Bottom Button"></Button>
<Button toolkit:DockPanel.Dock="Left" Content="Left Button"></Button>
<Button toolkit:DockPanel.Dock="Right" Content="Right Button"></Button>
<Button Content="Remaining Space"></Button>
</toolkit:DockPanel>
5.Grid
<Grid ShowGridLines="True" Background="White">
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
...
</Grid>
6.GridSplitter
<Grid Background="White">
<Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="100"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition MinWidth="50"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Margin="3" Content="Left Side of the Grid"></Button>
<controls:GridSplitter Grid.Column="1" Grid.RowSpan="2" Background="LightGray"
Width="3" VerticalAlignment="Stretch" HorizontalAlignment="Center"
ShowsPreview="False"></controls:GridSplitter>
<Button Grid.Column="2" Margin="3" Content="Right Side of the Grid"></Button>
</Grid>
<!-- This is the Grid for the entire page. -->
<Grid Background="White">
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<!-- This is the nested Grid on the left.
It isn't subdivided further with a splitter. -->
<Grid Grid.Column="0" VerticalAlignment="Stretch">
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Button Margin="3" Grid.Row="0" Content="Top Left"></Button>
<Button Margin="3" Grid.Row="1" Content="Bottom Left"></Button>
</Grid>
<!-- This is the vertical splitter that sits between the two nested
(left and right) grids. -->
<controls:GridSplitter Grid.Column="1" Background="LightGray"
Width="3" HorizontalAlignment="Center" VerticalAlignment="Stretch">
</controls:GridSplitter>
<!-- This is the nested Grid on the right. -->
<Grid Grid.Column="2">
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Button Grid.Row="0" Margin="3" Content="Top Right"></Button>
<Button Grid.Row="2" Margin="3" Content="Bottom Right"></Button>
<!-- This is the horizontal splitter that subdivides it into
a top and bottom region.. -->
<controls:GridSplitter Grid.Row="1" Background="LightGray"
Height="3" VerticalAlignment="Center" HorizontalAlignment="Stretch"
ShowsPreview="False"></controls:GridSplitter>
</Grid>
</Grid>
7.Canvas
<Canvas Background="White">
<Button Canvas.Left="10" Canvas.Top="10" Canvas.ZIndex="1" Content="(10,10)"></Button>
<Button Canvas.Left="120" Canvas.Top="30" Content="(120,30)"></Button>
<Button Canvas.Left="60" Canvas.Top="80" Width="50" Height="50"
Content="(60,80)"></Button>
<Button Canvas.Left="70" Canvas.Top="120" Width="100" Height="50"
Content="(70,120)"></Button>
</Canvas>
8.Scrolling
<ScrollViewer Background="AliceBlue"></ScrollViewer>
9.Scaling
<toolkit:Viewbox></toolkit:Viewbox>
10.Full Screen
private void Button_Click(object sender, RoutedEventArgs e)
{
Application.Current.Host.Content.IsFullScreen = true;
}
book mark:145
![](https://img2024.cnblogs.com/blog/35695/202408/35695-20240826070647288-243310440.jpg)