ホーム > コンピュータ > C# > WPF in C# > Webツール開発

ベクトルドロー・レベルゼロ+

ブラウザアプリケーション001[C#WPF]

新規作成日 2015-09-25
最終更新日

概要

WebBrowserクラス(外部サイト) で紹介されているサンプルコードを参考に、実際に簡単なアプリケーションを作成しました。

実際に使ってみると、javaスクリプトエラーが発生し、ブラウザが古いと警告されます。

WebBrowserクラスを使って作成したブラウザはいったいどうやって使用すればいいのでしょうか。

プログラム

xaml


<Window x:Class="WebBrowser001.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="350" Width="525">

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="19"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <DockPanel Grid.Row="0">
            <Button DockPanel.Dock="Right" Click="goNavigateButton_Click" Width="40">Go</Button>
            <TextBox x:Name="addressTextBox"/>
        </DockPanel>
        <Grid Grid.Row="1">
            <WebBrowser x:Name="myWebBrowser" />
        </Grid>
    </Grid>

</Window>

xaml.cs


using System;
using System.Windows;

namespace WebBrowser001
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void goNavigateButton_Click(object sender, RoutedEventArgs e)
        {
            // Get URI to navigate to
            // 操作するために、URIを取得します

            Uri uri = new Uri(this.addressTextBox.Text, UriKind.RelativeOrAbsolute);

            // Only absolute URIs can be navigated to
            // 絶対URIだけで、操作することができます
            if (!uri.IsAbsoluteUri)
            {
                MessageBox.Show("The Address URI must be absolute eg 'http://www.microsoft.com'");
                return;
            }

            // Navigate to the desired URL by calling the .Navigate method
            // .Navigateメソッドを呼ぶことで、望むURLに移動します
            this.myWebBrowser.Navigate(uri);
        }
    }
}

使ってみます

実行します

ディバッグビルドで、実行しました。

テキストボックスにURLを入力しGOボタンを押します。

テキストボックスにURLを入力しGOボタンを押します。

Javaスクリプトのエラーダイアログが表示されます。

Javaスクリプトのエラーダイアログが表示されます。

このブラウザは、最新版ではないと表示されます。

このブラウザは、最新版ではないと表示されます。

対処方法

xamlコードのxmlnsを変更するとスクリプトエラーは、発生したり、しなくなったりします。 おそらく広告に使われているスクリプトが、スクリプトエラーの原因だと思います。そして、「このブラウザは、最新版ではない」との表示はそのままです。

何か、対応策があるのかもしれません。

xaml


<Window x:Class="WebBrowser001.MainWindow"
        xmlns="http://schemas.microsoft.com/netfx/2009/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="350" Width="525">
Codeをダウンロード
ページトップへ
C#トップ
Copyright (C) 2011-2016 kukekko All Rights Reserved.
kukekko@gmail.com
ご連絡の際はアドレスの@は半角にしてください。 また、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません 」。
inserted by FC2 system