Mega Code Archive

 
Categories / C# / WPF
 

Create a multi threaded web browsing application

<Window x:Class="WpfApplication1.Window1"     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     Title="MultiBrowse" Height="600" Width="800" Loaded="OnLoaded">   <StackPanel Name="Stack" Orientation="Vertical">     <StackPanel Orientation="Horizontal">       <Button Content="New Window" Click="NewWindowHandler" />       <TextBox Name="newLocation" Width="500" />       <Button Content="GO!" Click="Browse" />     </StackPanel>     <Frame Name="placeHolder" Width="800" Height="550"></Frame>   </StackPanel> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Threading; using System.Threading; namespace WpfApplication1 {     public partial class Window1 : Window     {         public Window1() : base()         {             InitializeComponent();         }         private void OnLoaded(object sender, RoutedEventArgs e)         {            placeHolder.Source = new Uri("http://www.rntsoft.com");         }         private void Browse(object sender, RoutedEventArgs e)         {             placeHolder.Source = new Uri(newLocation.Text);         }         private void NewWindowHandler(object sender, RoutedEventArgs e)         {                    Thread newWindowThread = new Thread(new ThreadStart(ThreadStartingPoint));             newWindowThread.SetApartmentState(ApartmentState.STA);             newWindowThread.IsBackground = true;             newWindowThread.Start();         }         private void ThreadStartingPoint()         {             Window1 tempWindow = new Window1();             tempWindow.Show();                    System.Windows.Threading.Dispatcher.Run();         }     } }