ということで、WPFでブラウザ作るときにお世話になるFrameについて。
といっても、何も語るわけじゃない…。
でも、あえてエントリにする。
だって…
名前からブラウザみたいに使えるってわかりにくいじゃない!
というわけで、超簡単にブラウザもどきをこさえる。
Frameを使えばできることがわかればすぐ!!
Window1.xaml
<Window x:Class="WpfBrowser.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WPF Browser">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition />
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox Grid.Column="0" Name="url" HorizontalAlignment="Stretch" />
<Button Grid.Column="1" Content="Navigate" Click="NavigateClick"/>
</Grid>
<Frame Grid.Row="1" Name="browser" />
</Grid>
</Window>
Window1.xaml.cs
using System;
using System.Windows;
namespace WpfBrowser
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void NavigateClick(object sender, RoutedEventArgs e)
{
browser.Source = new Uri(url.Text);
}
}
}
GridにURLを入れるTextBoxと、TextBoxに入れたURLへ移動するためのボタンと、Frameで構成されたシンプルなXAML。
これのC#のコード部分もほぼ何もしてない。
FrameのSourceプロパティにUriを突っ込んでるだけ。
これだけでも立派?なブラウザ。お手軽だわ。