1

さまざまな処理を行う Web アプリケーションがあり、システムによって生成されたドキュメントを印刷する C# プログラムを作成する必要があります。

ユーザーが Web フォームの印刷ボタン ( window.print()) をクリックすると、印刷ダイアログ ボックスを表示せずに特定のプリンターに印刷されます。

試しwebbrowser.print()てみましたが、ポップアップなしで Web インターフェイスのみを印刷します。

私が探しているものの 1 つは、Web サイトによって作成された印刷ジョブを処理する方法です。C# プログラムで印刷ダイアログ ボックスを削除し、プリンターに直接印刷できるようにしたいと考えています。

これを実装する方法についてのヒントを誰かに教えてもらえますか、またはこれが不可能な理由を説明できますか?

PS Webアプリケーションでは何も変更できません。そのため、この追加のアクションを実行/管理する C# プログラムを作成したいと考えています。

4

2 に答える 2

0

C# フォームに webbrowser コントロールがありますか? これを行う:

myBrowser.Document.GetElementById("ButtonId").InvokeMember("クリック");

自動的にボタンをクリックします。

ボタンに ID がない場合は、クラスまたはタグを使用してそのボタンを識別する必要があります。「Web ブラウザー コントロールでボタンを自動的にクリック」を検索します。

于 2012-10-05T14:22:03.870 に答える
0

C# コードから Web ページ内にスクリプトを挿入してみてください

一部の C# アプリ ボタンのクリックに似たもの。.

HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0];
HtmlElement scriptEl = webBrowser1.Document.CreateElement("script");
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
element.text = "function printDocument() { window.print(); }";
head.AppendChild(scriptEl);
webBrowser1.Document.InvokeScript("printDocument");

または単に

webBrowser1.InvokeScript("eval", "window.print();");
于 2012-10-05T14:45:43.247 に答える