日期:2014-05-20  浏览次数:21519 次

c#点击打印预览里面的打印按钮,要弹出打印设置窗口,要怎么做?
1、在预览里,点击打印按钮,要弹出打印设置窗口,可以选择打印机及打印哪些页。
2、为什么无论在哪个时候弹出打印设置窗口,里面的打印范围都是全部,页码范围和选定范围不可选,也就是不能选择打印哪些页?

以上两个问题,有什么解决办法吗?

------解决方案--------------------
關注。。
------解决方案--------------------
var hkey_root,hkey_path,hkey_key
hkey_root= "HKEY_CURRENT_USER "
hkey_path= "\\\\Software\\\\Microsoft\\\\Internet Explorer\\\\PageSetup\\\\ "

// 设置页眉页脚为空
function PageSetup_Null()
{
try{
var RegWsh = new ActiveXObject( "WScript.Shell ") ;
hkey_key= "header " ;
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key, " ") ;
hkey_key= "footer " ;
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key, " ") ;
}
catch(e){}
}

// 设置页眉页脚为默认值
function PageSetup_Default()
{
try{
var RegWsh = new ActiveXObject( "WScript.Shell ") ;
hkey_key= "header " ;
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key, "&w&b页码,&p/&P ") ;
hkey_key= "footer " ;
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key, "&u&b&d ") ;
}
catch(e){}
}

// 打印
function PrintPage()
{
PageSetup_Null();
document.getElementById( 'prtLine ').style.display = "none ";
document.getElementById( 'btnPrt ').style.display = "none ";
//document.getElementById( 'subLine ').style.display = "none ";
wb.execwb(6,1);
PageSetup_Default();
}
这个应该对你有帮助 去掉页眉页脚
------解决方案--------------------
好久好久没上CSDN了。。。。才一上就看见 星宇MM 的帖子,不顶不行啊^_^


------解决方案--------------------
html 的body中
<object classid= "CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 " height=0 id=WB name=wb width=0 VIEWASTEXT> </object>
------解决方案--------------------
try {

StreamReader streamToPrint = new StreamReader ( "PrintMe.Txt ");
try {
TextFilePrintDocument pd = new TextFilePrintDocument(streamToPrint); //假定为默认打印机

PrintDialog dlg = new PrintDialog() ;
dlg.Document = pd;
DialogResult result = dlg.ShowDialog();

if (result == DialogResult.OK) {
pd.Print();
}

} finally {
streamToPrint.Close() ;
}

} catch(Exception ex) {
MessageBox.Show( "打印文件时发生错误 - " + ex.Message);
}
如果你是用水晶报表之类就可以用水晶报表的ReportObject对象中的方法去调用了。
------解决方案--------------------
using System.Drawing.Printing;
------解决方案--------------------