30 Ekim 2013 Çarşamba

C# ile Microsoft Word Dokümanı Oluşturma ve Açma

Bu makalemde sizlere c# yardımı ile varolan bir microsoft word dokümanını nasıl açabileceğinizi ve yeni bir Microsoft word dokümanını nasıl oluşturabileceğinizi anlatmaya çalışacağım.

Bu işlem için öncelikle bir Windows Application Project oluşturalım ve ismini de wordapp olarak verelim.Bu işlemden sonra karşımıza gelen Windows Form nesnesi üzerine iki adet button ve bir adet de openfiledialog nesnesi yerleştirelim. Bütün bu işlemleri yerine getirdikten sonra formumuzun görünümü Şekil 1'deki gibi olacaktır.



Şekil 1. Form Görünümü
.NET üzerinden Microsoft Word ile ilgili işlemleri yapabilmemiz için .NET Project'imize Microsoft Word 11.0 Object Library isimli COM referansı eklememiz gerekmektedir. Bunun için Solution Explorer penceresi üzerinde bulunan References seçeneği üzerinde sağ tuşa tıklayalım ve Add Reference seçeneğini seçelim. Karşımıza gelen pencerede COM sekmesini seçip buradan Microsoft Word 11.0 Object Library referansını bulup OK tuşuna basalım. Böylece projemiz için gerekli olan COM referansı projemize eklemiş olacağız. Bu durum Şekil 2'de gösterilmiştir.

Şekil 2. Referans Ekleme
Programımızı yazmaya başlamadan önce formumuzun kod kısmına geçerek aşağıdaki namespace’i kodumuza eklememiz gerekir.
using Microsoft.Office.Interop.Word;
Bu işlemden sonra programımızı yazmaya başlayabiliriz. Öncelikle Form1 classımız içerisinde Application class türünde global bir nesne tanımlamalıyız.
ApplicationClass uygulama = new ApplicationClass();
Bundan sonra “Word Dokumanı Aç” etiketli butonun click event’ine aşağıdaki kod parçası yazılmalıdır.
private void button1_Click(object sender, EventArgs e)
{
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        //Açılacak Olan Dosya Adını gösteren değişken
        object dosyaadi = openFileDialog1.FileName;
        //Açılan dokumanın salt okunur olup olamayacağını belirleyen değişken
        object sadeceokunur = false;
        //Açılan dokumanın gösterilip gösterilmeyeceğini belirleyen değişken
        object gorunur = true;
        object missing = System.Reflection.Missing.Value;
        //Word Programını görünür yapan satır
        uygulama.Visible = true;
        Document dosya = uygulama.Documents.Open(ref dosyaadi, ref missing, ref sadeceokunur, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref gorunur, ref missing, ref missing, ref missing, ref missing);
        dosya.Activate();
        //Açılan dokumanın ilk satırına parametre olarak gönderilen texti yazar
        uygulama.Selection.TypeText("Merhaba Dünya");
        //Bir alt satıra geçmenizi sağlar
        uygulama.Selection.TypeParagraph();
        //Sıradaki Satıra Tarihi ekleyen method
        uygulama.Selection.InsertDateTime(ref missing, ref missing, ref missing, ref missing, ref missing);
        uygulama.Selection.TypeParagraph();
     }
}
Yukarıdaki kod yardımı ile seçtiğimiz bir word dokümanını c# yardımı ile açmış oluyoruz. Yukarıdaki kod da missing isimli parametreler dikkatinizi çekmiş olmalı. .NET’de com nesnelerine erişmek için opsiyonel olan parametreleri simüle etmede System.Reflection.Missing.Value değeri kullanılabilir. Ben de burada bir önceki cümlede anlattığım nedenle missing isimli değişkeni kullandım.
Şimdi de yeni bir word dokumanı oluşturalım. Bunun için de “Word Dokumanı Oluştur Butonunun” click event’ine aşağıdaki kodlar yazılmalıdır.
private void button2_Click(object sender, EventArgs e)
{
    object missing = System.Reflection.Missing.Value;
    //Yeni dokuman oluşturuluyor
    Document dosya = uygulama.Documents.Add(ref missing, ref missing, ref missing, ref missing);
    uygulama.Visible = true;
    dosya.Activate();
    //Yeni dosyadaki hizalamanın ortada olması sağlanıyor
    uygulama.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
    //Yazı Koyu yapılıyor
    uygulama.Selection.Font.Bold = (int)WdConstants.wdToggle;
    // Yazı dokumana yazdırılıyor
    uygulama.Selection.TypeText("İlk Dokuman");
}
Bu makalemde sizlere .NET Yardımı ile bir word dokümanının nasıl açılabileceğini ve yeni bir word dokümanının nasıl oluşturulabileceğini anlatmaya çalıştım.



Hiç yorum yok:

Yorum Gönder