2011-01-26 4 views
2

확장명이 .txt 인 문서를 인쇄하려고합니다. 따라서 내 코스 북을 참조하고 있지만 혼란 스럽습니다. 다음은이 책에 주어진 소스 코드 :C#에서 문서 인쇄

private void Print_Click(object sender, EventArgs e) 
{ 
printDialog1.Document = printDocument1 // there is no object in my program names ad printDocument1 
DialogResult result = printDialog1.ShowDialog(); 
if (result == DialogResult.OK) 
{ 
printDocument1.Print(); 

가와

답변

2

귀하의 예를 주어 더 많은 코드는하는 PrintDocument 개체가 도구 상자에서 폼으로 끌어 된 것으로 가정되어있다 : 당신은 그냥 불구하고 수 직접 개체를 쉽게 만들 수 있습니다.

 private void Print_Click(object sender, EventArgs e) 
     { 
     PrintDocument printDocument = new PrintDocument(); 
     printDocument.PrintPage += new PrintPageEventHandler(printDocument_PrintPage); 

     PrintDialog printDialog = new PrintDialog 
     { 
      Document = printDocument 
     }; 

     DialogResult result = printDialog.ShowDialog(); 

     if (result == DialogResult.OK) 
     { 
      printDocument.Print(); // Raises PrintPage event 
     } 
    } 

    void printDocument_PrintPage(object sender, PrintPageEventArgs e) 
    { 
     e.Graphics.DrawString(...); 
    } 
+1

PrintPage 이벤트 처리기를 올바르게 가져 오는 데 도움이되지 않습니다. –

+1

아니요,하지만 * 숙제입니다. 어쨌든 스텁을 추가했습니다. – stuartd

1

디자인 모드에서 양식을 엽니 다. 도구 상자에서 PrintDocument 컨트롤을 찾습니다. 양식 위로 드래그 앤 드롭하십시오. 그러면 폼 클래스에 "printDocument1"이라는 필드가 추가됩니다. 그런 다음 양식 아래에 표시된 printDocument1 이미지를 두 번 클릭하십시오. 그러면 PrintPage 이벤트 처리기가 추가됩니다. 책의 코드를 사용하십시오.

책의 지침을 검토하면 다음과 같이 설명해야합니다. 내 단계별 지침을 사용하는 것이 가장 좋습니다. 기존 .txt 인 파일을 인쇄하려면

1

, 당신은 Windows 인쇄를 할 수 있습니다 :

using System.Diagnostics; 

Process myProcess = new Process(); 
myProcess.StartInfo.FileName = "C:\\thefile.txt"; // adjust to your needs 
myProcess.StartInfo.Verb = "print"; 
myProcess.Start(); 

Process를 참조하십시오.