سلام بر برنامه نویسان سی شارپ و wpf ! در این مطلب آموزش #C ، یاد می گیرین که چگونه یک مرورگر ساده با استفاده از wpf بسازید که قابلیت نمایش آدرس اینترنتی و back و forward باشه.
در این آموزش ، آدرس سایت مورد نظر از طریق کدنویسی وارد می شود ولی شما می توانید یک تکست باکس به مرورگرتان اضافه کنید تا آدرسی را که کاربر وارد می کند برای او load بشود.
ابتدا کدهای زیر را در قسمت XAML قرار بدهید:
<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>
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>
سپس این کدها را در قسمت XAML.cs قرار دهید:
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WebBrowserControlIn_WPF
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
myBrowser.Navigate(new Uri("http://www.program98.com/learn"));
}
private void GoBack_Click(object sender, RoutedEventArgs e)
{
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WebBrowserControlIn_WPF
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
myBrowser.Navigate(new Uri("http://www.program98.com/learn"));
}
private void GoBack_Click(object sender, RoutedEventArgs e)
{