2013-02-28 5 views
2

Я довольно новичок в этом, и мне нужна была помощь в преобразовании метода в класс библиотеки, который будет использоваться как dll. Я вопрос как я имею дело с значениями textbox, которые я использую, чтобы получить данные, переданные от пользователя.Создание класса библиотеки в C#

Это мой метод, который я использую, и хотел бы иметь в качестве полезного класса библиотеки:

public Microsoft.Office.Interop.Excel.Workbook excelWorkbook { get; set; } 
    void ExcelToPdf(string convertFilePath) 
    { 
     Microsoft.Office.Interop.Excel.Application appWord = new Microsoft.Office.Interop.Excel.Application(); 
     excelWorkbook = appWord.Workbooks.Open(DocumentUNCPath.Text); 

     excelWorkbook.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, convertFilePath); 
     excelWorkbook.Close(); 
     appWord.Quit(); 
    } 

ответ

2

Итак, когда вы переместите его в библиотеку, вы собираетесь хотите, чтобы ввести эти значения в метод:

public Microsoft.Office.Interop.Excel.Workbook excelWorkbook { get; set; } 

void ExcelToPdf(string convertFilePath, string documentUncPath) 
{ 
    Microsoft.Office.Interop.Excel.Application appWord = new Microsoft.Office.Interop.Excel.Application(); 
    excelWorkbook = appWord.Workbooks.Open(documentUncPath); // WAS DocumentUNCPath.Text 

    excelWorkbook.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, convertFilePath); 
    excelWorkbook.Close(); 
    appWord.Quit(); 
} 

и поэтому при вызове метода вы будете проходить в значении DocumentUNCPath.Text из формы.

+0

Спасибо, что это помогает. Итак, что, если у меня есть сообщения об ошибках «неверный введенный номер, пожалуйста, введите« вид сообщения »- я также включил их в класс библиотеки или нет? – BB987

+0

Да, вы можете помещать такие сообщения в свою библиотеку. Так что библиотека библиотеки может дать дружественное пользователю сообщение об исключении, если значения недопустимы. – Sachin

1

Если я правильно понял ваш вопрос.

В Visual Studio выберите, File - New - Project - Class Library. Скопируйте и вставьте код в класс, должен выглядеть примерно так:

namespace ClassLibrary1 
{ 
    public class Class1 
    { 
     public Microsoft.Office.Interop.Excel.Workbook excelWorkbook { get; set; } 
     void ExcelToPdf(string convertFilePath) 
     { 
      Microsoft.Office.Interop.Excel.Application appWord = new Microsoft.Office.Interop.Excel.Application(); 
      excelWorkbook = appWord.Workbooks.Open(DocumentUNCPath.Text); 

      excelWorkbook.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, convertFilePath); 
      excelWorkbook.Close(); 
      appWord.Quit(); 
     } 
    } 
} 

Постройте приложение, и вы найдете библиотеки DLL в папке выходного лотка.

+0

Я не думаю, что у меня должен быть DocumentUNCPath.Text, потому что использование DLL в другой программе может иметь другое имя для текстового поля. но спасибо за разъяснение идеи. – BB987

Смежные вопросы