Warning: Content may cause severe depression

I present to you in all its glory: XAML. This will surely make your stomach turn.

<UserControl x:Class="SomeXAMLControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:backgroundEditor="clr-namespace:Some.Namespace">

    <UserControl.Resources>
        <backgroundEditor:TextureGroupsConverter x:Key="TextureGroupsConverter" />
    </UserControl.Resources>

    <ItemsControl>
        <StackPanel Margin="10">
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="45" />
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>
                <Label Grid.Column="0">Name</Label>
                <TextBox Grid.Column="1" Margin="0,2,0,0" Text="{Binding Path=Name}" />
            </Grid>
            <Border CornerRadius="3" Margin="0,5,0,5" BorderThickness="1">
                <Image Stretch="Uniform" StretchDirection="DownOnly" Height="128" MaxHeight="128"
                           x:Name="BackgroundPreviewImage"
                           Source="{Binding Path=FullyQualifiedImageFileName}"
                           RenderOptions.BitmapScalingMode="HighQuality"
                           SnapsToDevicePixels="True"
                           RenderOptions.EdgeMode="Aliased"/>
            </Border>
            <Button Click="ButtonLoadBackground_OnClick">Assign Image</Button>
            <Button Margin="0,5,0,0" IsEnabled="False">Open External Editor</Button>
            <Button Margin="0,5,0,0" IsEnabled="False">Open Tileset Editor</Button>
            <Label>
                <Label.Content>
                    <TextBlock>
                        <TextBlock.Text>
                            <MultiBinding StringFormat="{}Dimensions: {0}x{1}">
                                <Binding Path="Width" FallbackValue="0" />
                                <Binding Path="Height" FallbackValue="0" />
                            </MultiBinding>
                        </TextBlock.Text>
                    </TextBlock>
                </Label.Content>
            </Label>
            <GroupBox Header="Texture Settings">
                <StackPanel>
                    <CheckBox IsChecked="{Binding Path=IsTileset, Mode=TwoWay}">Use as tile set</CheckBox>
                    <CheckBox IsChecked="{Binding Path=TileHor, Mode=TwoWay}">Tile horizontally</CheckBox>
                    <CheckBox IsChecked="{Binding Path=TileVer, Mode=TwoWay}">Tile vertically</CheckBox>
                    <CheckBox IsChecked="{Binding Path=For3D, Mode=TwoWay}">Separate Texture Page (size power of 2)</CheckBox>
                    <Label>Texture Group</Label>
                    <ComboBox ItemsSource="{Binding Path=Project, Converter={StaticResource TextureGroupsConverter}, Mode=OneWay}"
                                  SelectedIndex="{Binding Path=TextureGroups[0], FallbackValue=0, Mode=TwoWay}" />
                </StackPanel>
            </GroupBox>

            <GroupBox Header="Tile Properties" IsEnabled="{Binding Path=IsTileset}">
                <Grid Margin="3">
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                        <RowDefinition />
                        <RowDefinition />
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="5*" />
                        <ColumnDefinition Width="5*" />
                    </Grid.ColumnDefinitions>

                    <Label Grid.Row="0" Grid.Column="0" HorizontalAlignment="Right">Tile Width:</Label>
                    <TextBox Grid.Row="0" Grid.Column="1" Text="{Binding Path=TileWidth, Mode=TwoWay}" />
                    <Label Grid.Row="1" Grid.Column="0" HorizontalAlignment="Right">Tile Height:</Label>
                    <TextBox Grid.Row="1" Grid.Column="1" Text="{Binding Path=TileHeight, Mode=TwoWay}" />

                    <Label Grid.Row="2" Grid.Column="0" HorizontalAlignment="Right">Hor Offset:</Label>
                    <TextBox Grid.Row="2" Grid.Column="1" Text="{Binding Path=TileOffsetHor, Mode=TwoWay}" />
                    <Label Grid.Row="3" Grid.Column="0" HorizontalAlignment="Right">Ver Offset:</Label>
                    <TextBox Grid.Row="3" Grid.Column="1" Text="{Binding Path=TileOffsetVer, Mode=TwoWay}" />

                    <Label Grid.Row="4" Grid.Column="0" HorizontalAlignment="Right">Hor Sep:</Label>
                    <TextBox Grid.Row="4" Grid.Column="1" Text="{Binding Path=TileSepHor, Mode=TwoWay}" />
                    <Label Grid.Row="5" Grid.Column="0" HorizontalAlignment="Right">Ver Sep:</Label>
                    <TextBox Grid.Row="5" Grid.Column="1" Text="{Binding Path=TileSepVer, Mode=TwoWay}" />
                </Grid>
            </GroupBox>
        </StackPanel>
    </ItemsControl>

</UserControl>