WebBrowser Control in WPF

In this article, I am going to show how we can use WebBrowser control in WPF application.
  • 4289
Download Files:
 

In this article, I am going to show how we can use WebBrowser control to show html document within our WPF application. WPF introduces WebBrowser control to ensure that we can show html pages embedded inside the control. Here I use 2 buttons also to go back and forward.

This is my XAML code

<Window x:Class="WebBrowserControlIn_WPF.Window1"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    Title="WebBrowser Control in WPF" Height="Auto" Width="Auto" Loaded="Window_Loaded">

    <Grid x:Name="LayoutRoot" Width="Auto">

        <Grid.RowDefinitions>

            <RowDefinition Height="10"/>

            <RowDefinition Height="*"/>

        </Grid.RowDefinitions>

        <Grid.ColumnDefinitions>

            <ColumnDefinition Width="65"></ColumnDefinition>

            <ColumnDefinition Width="*"></ColumnDefinition>

            <ColumnDefinition Width="10"></ColumnDefinition>

        </Grid.ColumnDefinitions>

        <Grid HorizontalAlignment="Stretch" Margin="0,15,0,0" Grid.Row="1" Grid.Column="1"VerticalAlignment="Stretch">

            <WebBrowser x:Name="myBrowser" Margin="0,0,0,0" Cursor="Arrow" Height="Auto"/>

        </Grid>

        <Grid HorizontalAlignment="Stretch" Margin="0,15,0,0" Grid.Row="1" Grid.Column="0"VerticalAlignment="Stretch">

            <Grid.RowDefinitions>

                <RowDefinition Height="40"/>

                <RowDefinition Height="40"/>

            </Grid.RowDefinitions>

            <Grid HorizontalAlignment="Stretch" Margin="0,15,0,0" Grid.Row="0" VerticalAlignment="Stretch">

                <Border Height="20" BorderThickness="2" CornerRadius="5,5,0,0"VerticalAlignment="Top"   />

                <Button Click="GoBack_Click" Width="50" Height="20" x:Name="GoBack">Go Back</Button>

            </Grid>

 

            <Grid HorizontalAlignment="Stretch" Margin="0,15,0,0" Grid.Row="1" VerticalAlignment="Stretch">

                <Button Click="GoForward_Click" Width="61" Height="20" x:Name="GoForward">Go Forward</Button>

            </Grid>

        </Grid>

    </Grid>

</Window>

This is my XAML.cs code

Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Navigation
Imports System.Windows.Shapes
Class Window1

    Private Sub GoBack_Click(ByVal sender As System.Object, ByVal e AsSystem.Windows.RoutedEventArgs)
        If (myBrowser.CanGoBack) Then
            myBrowser.GoBack()
        Else
            MessageBox.Show("Cannot Go back")
        End If

    End Sub

    Private Sub GoForward_Click(ByVal sender As System.Object, ByVal e AsSystem.Windows.RoutedEventArgs)
        If (myBrowser.CanGoForward) Then
            myBrowser.GoForward()
        Else
            MessageBox.Show("Cannot Go Forward")
        End If
    End Sub

    Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e AsSystem.Windows.RoutedEventArgs)
        myBrowser.Navigate(New Uri("http://www.c-sharpcorner.com"))
    End Sub
End Class

When we run the application then...

WPFWEBBrowser.jpg

Categories

More Articles

© 2019 DotNetHeaven. All rights reserved.