2014-12-25 4 views
2
// Display OpenFileDialog by calling ShowDialog method 
Nullable<bool> result = dlg.ShowDialog(); 

// Get the selected file name and display in a TextBox 
if (result == true) 
{ 
    string filename = dlg.FileName; 
    xpsFilePath = System.Environment.CurrentDirectory + "\\" + dlg.SafeFileName + ".xps"; 
    SourceUrl.Text = filename; 
    SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY"); 

    ExcelFile.Load(filename).Print(); 
} 

var convertResults = OfficeToXps.ConvertToXps(SourceUrl.Text, ref xpsFilePath); 
switch (convertResults.Result) 
{ 
    case ConversionResult.OK: 
     xpsDoc = new System.Windows.Xps.Packaging.XpsDocument(xpsFilePath, FileAccess.ReadWrite); 
     documentViewer1.Document = xpsDoc.GetFixedDocumentSequence(); 
     officeFileOpen_Status = true; 
     break; 

    case ConversionResult.InvalidFilePath: 
     // Handle bad file path or file missing 
     break; 
    case ConversionResult.UnexpectedError: 
     // This should only happen if the code is modified poorly 
     break; 
    case ConversionResult.ErrorUnableToInitializeOfficeApp: 
     // Handle Office 2007 (Word | Excel | PowerPoint) not installed 
     break; 
    case ConversionResult.ErrorUnableToOpenOfficeFile: 
     // Handle source file being locked or invalid permissions 
     break; 
    case ConversionResult.ErrorUnableToAccessOfficeInterop: 
     // Handle Office 2007 (Word | Excel | PowerPoint) not installed 
     break; 
    case ConversionResult.ErrorUnableToExportToXps: 
     // Handle Microsoft Save As PDF or XPS Add-In missing for 2007 
     break; 
} 

를 사용하지만이 오류가 (system.argumentexception 폭을 발생 높이가이 선 (ExcelFile.Load (파일 이름)에 음이 아닌 수 있어야합니다. 도움을 enter image description here인쇄 파일 엑셀 내가 <strong>Excel에서</strong> 파일 인쇄 시도하고 C#을

덕분에 다음이 첨부 파일과 같은 인쇄())는 나!

+0

This is Screenshot 오류 http://i.stack.imgur.com/Kg9Z8.png – Pshtiwan

+0

이미지가 필요했기 때문에이 이미지를 추가했습니다. 코멘트가 아닙니다. 이것에 대한 간단한 대답은, 당신이 설정하고있는 너비와 높이가 무엇입니까? –

답변

0

가장 큰 문제는 여기에 파일이 무효 인 경우,로 발생합니다. 당신의 Visual Studio에서 (스택 추적 정보를 마우스 오른쪽 측면을 봐 Wi ndow, 예외 사항 확인). 문서의 너비와 높이가 음수이거나 음수이므로 예외를 throw하려고합니다.

실행을 처리하려면 파일의 너비 및 높이 속성이 유효한 값이어야하고 0보다 큰 값이어야합니다. ArgumentException은 전달 된 매개 변수 (귀하의 경우 filename가 매개 변수 임)가 유효하지 않으며 언어의 법칙 (또는 API)을 준수하지 않을 때 발생합니다. 파일 이름으로 전달되는 파일의 속성이 ExcelFile.Load() 메서드의 매개 변수에 대한 요구 사항에 맞는지 확인하십시오.

+0

감사합니다 Afzall Ahmad :) – Pshtiwan

+0

@Pshtiwan, 나는이 API에 대한 설명서를 읽으라고 조언하고 싶습니다. MSDN에서이 리소스를 찾을 수 없었습니다. 제 3 자 라이브러리를 사용 했습니까? –

+0

이것은 API입니다 http://www.gemboxsoftware.com/SampleExplorer/Spreadsheet/AdvancedFeatures/PrintandViewOptions?tab=cs – Pshtiwan