i have a custom module that has it's own printer icon. I pass in a _date and _loc parameters. I redirect to the ascx, but use the print skin in the URL.
Dim params As String = "&date=" + _date + "&loc=" & _loc + "&"
imgPrinter.OnClientClick = "window.open('" & NavigateURL(TabId, "view", "mid=" & ModuleId.ToString, params & "&SkinSrc=" & QueryStringEncode("[G]" & Skins.SkinInfo.RootSkin & "/" & glbHostSkinFolder & "/" & "No Skin"), "ContainerSrc=" & QueryStringEncode("[G]" & Skins.SkinInfo.RootContainer & "/" & glbHostSkinFolder & "/" & "No Container"), "dnnprintmode=true") & "');"