2017-06-10 5 views
1

自分のプログラムでGeckoブラウザを使用しています。このブラウザでデザインモードをオンにしようとしています。Geckoでデザインモードを有効にするにはどうすればよいですか?

webBrowser1.Document.DomDocument.GetType().GetProperty("designMode").SetValue 
(webBrowser1.Document.DomDocument, "On", null); 

しかし、動作しません。どうしたらいいですか?

+0

可能な重複[GeckoFXにnsIHTMLEditorインタフェースにアクセスするには?](https://stackoverflow.com/questions/33467992/how-to-access-nsihtmleditor -interface-in-geckofx) – Bartosz

答えて

1

nsIHTMLEditorはおそらく、ブラウザごとのインスタンスではなく、(Xpcom.GetServiceによって返されたもののような)グローバルインスタンス

一つは、(ウィンドウのインスタンスを供給することによって)ことによって、このようなのnsIEditorを得ることができます

var editingSession = Xpcom.CreateInstance<nsIEditingSession>("@mozilla.org/editor/editingsession;1"); 
nsIEditor editor = editingSession.GetEditorForWindow((nsIDOMWindow)Window.DomWindow); 
Marshal.ReleaseComObject(editingSession); 
です

(またはあなただけのnsIEditor GeckoWebBrowser.Editorプロパティを呼び出すことができます。)

あなたはnsIHtmlEditorにこののnsIEditorをキャストすることができるかもしれ(私はそれを試して、まだ持っているが)

GeckoWebBrowser browser = .....; 
// Untested code 
nsIHTMLEditor htmlEditor = (nsIHTMLEditor)browser.Editor; 

@GreenBear

からVBコード
Dim gEditor As nsIHTMLEditor: 
gEditor = Gbrowser.Editor: 
gEditor.DecreaseFontSize() 
+0

本当にありがとうございます。 – Kaprog

関連する問題