user1821499
user1821499

Reputation: 311

Win Form user control not visible in WPF xaml

I have a xaml start up form in which I am trying to host a windows form control which is a splash screen displaying Product Name / License stuff.. Here is the xaml code which I am using to host the user control but its not at all visible. Not in the designer nor when I run the application actually... Whats wrong in this?

<Window
    x:Class="StartupWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:wf="clr-namespace:namespace;assembly=assemblyName"
    mc:Ignorable="d" x:Name="splashWindow"
    WindowStyle="None" ResizeMode="NoResize" Width="500" Height="400"
    AllowsTransparency="True" Background="Transparent" ShowInTaskbar="False"            Topmost="True"
>
<Window.Triggers>
    <EventTrigger RoutedEvent="Window.Unloaded">
        <BeginStoryboard>
            <Storyboard x:Name="board">
                <DoubleAnimation Storyboard.TargetName="splashWindow"   Storyboard.TargetProperty="Opacity" From="1.0" To="0" Duration="0:0:1.5" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>
<Grid x:Name="LayoutRoot">
    <Grid x:Name="Splash" Width="450" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,100,0,0">
        <Grid x:Name="Back">
            <Grid.Effect>
                <DropShadowEffect ShadowDepth="1" Direction="-90" BlurRadius="10" Opacity="0.25"/>
            </Grid.Effect>
            <Border Background="Black" CornerRadius="3" Opacity="0.15"/>
            <Border CornerRadius="2" Margin="1" Background="#229C47"/>
        </Grid>
        <Grid x:Name="Content_Area" Margin="12">
            <Image x:Name="Image" Stretch="None" Height="99" Grid.Row="1"/>
            <TextBlock x:Name="Info" TextWrapping="Wrap" Text="Starting..." Grid.Row="2" Margin="12,12,12,0" Foreground="White"/>
        </Grid>
    </Grid>
    <WindowsFormsHost Height="325" Name="splashControl" Margin="54,12,64,24" Width="460" HorizontalAlignment="Center" Background="Transparent">
      <wf:SplashControl />
    </WindowsFormsHost>
 </Grid>
</Window>

Upvotes: 0

Views: 1823

Answers (1)

Panzer Ihnen
Panzer Ihnen

Reputation: 84

I'm fighting with the same problem now.

The problem here is the AllowsTransparency="True" of the window, that is incompatible with showing WinForms controls with WindowsFormsHost.

Take a look here.

Upvotes: 2

Related Questions