webbrowserコントロールでAタグの編集を行いたいのですが


まと  2011-10-10 05:47:09  No: 147367  IP: [192.*.*.*]

こんにちは

VB2005の環境で、Webbrowserコントロールのデザインモードを使ってHTMLエディターを作っています。

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        'Valueがからっぽだとダイアログの表示
        webbrowser.Document.ExecCommand("CreateLink", False, "http://www.yahoo.co.jp")

    End Sub

上のような処理で、ドキュメント内にアンカータグ(リンク)を挿入しています。
挿入することには問題なく正常に動いています。

isWebbrowserContextMenuEnabledをFalseにし、オリジナルなコンテキストメニューを組み込み、メニュー内で、ドキュメント内のアンカータグ(リンク)の
編集機能を実装しようと思っています。

アンカータグをタグを指定している文字列上で(選択し反転していなくても)、右クリックしたときには、Activeelementで検出できると思っていましたが、下記のようなコードでは、BODYタグが検出されてしまいます。
innerhtmlも、Bodyタグの内側が全て含まれています。

CurrentElement = webbrowser.Document.ActiveElement

標準の右クリックメニューにある、"リンクの編集"ではきちんと動作するのでやり方はあると思うのですが、上手くいきません。

クリックされた位置の文字列がアンカータグの一部であることの検出とアンカータグの変更方法のアドバイスを頂けると助かります。

よろしくお願い致します。

編集 削除