Visual Studio 2010 Enterprise가 있습니다. 다음은 런타임에 여백을 변경하지 않는 다른 모든 것들에 대해 완벽하게 작동하는 코드입니다. objRpt.PrintOptions.PageMargins.leftMargin
, rightmargin
등의 값이 변경되었지만 CyrstalReportViewer
또는 Hardcopy
출력에는 반영되지 않습니다.Visual Studio 2010에서 Crystal Reports 여백이 런타임에 변경되지 않습니다.
CrystalReport1 objRpt;
objRpt = new CrystalReport1();
adepter.Fill(Ds, "Customer");
objRpt.SetDataSource(Ds);
MessageBox.Show("Left margin:"+objRpt.PrintOptions.PageMargins.leftMargin.ToString()); //Here it shows 1440
objRpt.PrintOptions.PrinterName = "HP LaserJet 1020";
PageMargins margins = objRpt.PrintOptions.PageMargins;
margins.bottomMargin = 350;
margins.leftMargin = 350;
margins.rightMargin = 350;
margins.topMargin = 350;
objRpt.PrintOptions.ApplyPageMargins(margins);
MessageBox.Show("Left margin:"+objRpt.PrintOptions.PageMargins.leftMargin.ToString());
//Here it shows 350 BUT no use.
내가 보고서> 디자인> 페이지 설정을 마우스 오른쪽 버튼으로 클릭하여 디자인 타임에 여백을 설정 관리 : 여기
는 코드입니다. 여기서 설정하면 여백이 완벽하게 작동하며 보고서 뷰어와 하드 카피에 모두 반영됩니다. 하지만 위의 코드를 사용하면 이런 일이 발생하지 않습니다.
도움 주셔서 감사합니다 Joel .. 그러나 나는 이미 문제를 해소했다. 나는 내 자신의 질문에 대답 할 수 있는지, 따라서 StackOverflow에서 금지되는 것에 대한 두려움을 가지고 있었는지 모르겠다. –
[this post] (http : // meta. stackexchange.com/questions/12513/should-i-not-answer-my-own-questions) 메타 (그리고 실제로 많은 다른 것들)에 관해서는, 당신 자신의 질문에 대답하는 것이 완벽하게 좋아 보인다. – GusP