2011-09-14 14 views
1

私はAsp.Netを使用しており、Webページにはプリンタフレンドリーなボタンがあります。私は印刷のためのプリンタフレンドリーなCSSファイルを持っています。これは動作しますが、最初は2回、その後は1回だけクリックする必要があります。誰でも知っている理由は?コードビハインドからページを印刷する2回のクリックasp.net

Protected Sub PrintPartialButton_Click(sender As Object, e As EventArgs) Handles PrintPartialButton.Click 
    With PrintPage 
     .Attributes.Remove("media") 
     .Attributes.Remove("href") 
     .Attributes.Add("media", "print") 
     .Attributes.Add("href", "printer_friendly.css") 
    End With 

    PrintPartialButton.Attributes.Add("onclick", "window.print(); return false;") 
End Sub 
+3

なぜ、全ページの読み込みにprinter_friendly.cssを含めるだけではないのですか?現在の方法では、通常の印刷ボタンを使用して正しいスタイルシートを取得することはできません。 – NotMe

+0

さて、私はpartailページを印刷した後、最初のページのCSSにリセットすることができます。コードを編集します。こうすることで、通常の印刷ボタンでページ全体を印刷することができます。 – TroyS

+2

通常、「ページ内の」印刷ボタンはブラウザの印刷ボタンとは異なる動作をするのは悪い考えです。しかし、2つのスタイルシートをブラウザ用に表示用に、もう1つを印刷用に送るのが一般的です。 – NotMe

答えて

2

最初にクリックしたときに「onclick」イベントを添付しているため、最初は2回クリックする必要があります。あなたはpage_loadまたはpage_initにそれを添付する必要があります。サーバーコントロールを使用しないほうがいいでしょう。または、「OnClientClick = 'window.print(); false false;」をサーバーコントロールのマークアップに追加するだけです。

+0

ありがとうございました。非常に便利です。 – Sagotharan

関連する問題