Aracılığıyla paylaş


İzlenecek Yol: Excel Eylemler Bölmesindeki Denetimlere Veri Bağlama

Bu anlatımda Microsoft Office Excel'de bir eylem bölmesinde denetimlere nasıl veri bağlanacağı gösterilir.Denetimler, SQL Server veritabanındaki tablolar arasındaki master/detail ilişkisini gösterir.

Uygulama hedefi: Bu konudaki bilgiler, Excel 2013 ve Excel 2010 için belge düzeyi projelere yöneliktir. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.

Bu örneklerde aşağıdaki görevler gösterilir:

  • Çalışma sayfasına denetim ekleme.

  • Eylemler bölmesi denetimi oluşturma

  • Eylemler bölmesi denetimine veri bağımlı Windows Forms denetimi ekleme.

  • Uygulama açıldığında eylemler bölmesini gösterme.

[!NOT]

Bilgisayarınız, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arayüzü öğelerinden bazıları için farklı adlar veya konumlar gösterebilir.Bu öğeleri bilgisayarınızdaki Visual Studio sürümü ve kullandığınız ayarlar belirler.Daha fazla bilgi için bkz. Visual Studio'da Geliştirme Ayarlarını özelleştirme.

Önkoşullar

Bu örneği tamamlamak için aşağıdaki bileşenler gerekmektedir:

  • Microsoft Office geliştirici araçlarını içeren bir Visual Studio 2013 sürümü. Daha fazla bilgi edinmek için, bkz. Office Çözümleri Geliştirmek İçin Bilgisayarı Yapılandırma.

  • Excel 2013 veya Excel 2010.

  • Northwind SQL Server örnek veritabanı olan bir sunucuya erişim.

  • SQL Server veritabanı üzerinde okuma ve yazma izinleri.

Projeyi Oluşturma

İlk adım, bir Excel Çalışma Kitabı projesi oluşturamaktır.

Yeni bir proje oluşturmak için

  • Excel Eylem Bölmem isimli bir Excel Çalışma Kitabı projesi oluşturun.Sihirbazda Create a new document'ı (Yeni belge oluştur) seçin.Daha fazla bilgi için bkz. Nasıl Yapılır: Visual Studio'da Office Projeleri Oluşturma.

    Visual Studio tasarımcıda yeni Excel çalışma kitabını açar ve Çözüm Gezgini'ne Excel Eylem Bölmem projesini ekler.

Projeye Yeni Bir Veri Kaynağı Ekleme

Projeye yeni bir veri kaynağı eklemek için

  1. Veri kaynakları penceresi görünmüyorsa, menü çubuğu, seçme, onu görüntülemek Görünüm, Diğer Pencereler, Veri kaynakları.

  2. Seçim Yeni veri kaynağı Ekle başlatmak için Veri kaynağı Yapılandırma Sihirbazı'nı.

  3. Veritabanı'nı seçin ve sonra İleri'yi tıklatın.

  4. Northwind örnek SQL Server veritabanına bir veri bağlantısı seçin veya New Connection düğmesini kullanarak yeni bir bağlantı ekleyin.

  5. İleri düğmesini tıklatın.

  6. Bağlantıyı kaydetme seçeneği işaretliyse temizleyin ve İleri'yi tıklatın.

  7. Veritabanı nesneleri penceresindeki Tablolar düğümünü genişletin.

  8. Suppliers tablosunun yanındaki onay kutusunu seçin.

  9. Products tablosunu genişletin ve ProductName'i, SupplierID'yi, QuantityPerUnit'i, UnitPrice'ı seçin.

  10. Son düğmesini tıklatın.

Sihirbaz Suppliers tablosunu ve Products tablosunu Veri Kaynakları penceresine ekler.Ayrıca, Çözüm Gezgini'nde görünür olan türü belirtilmiş bir veri kümesini de ekler.

Çalışma Sayfasına Denetim Ekleme

Birinci çalışma sayfasına birer NamedRange denetimi ve ListObject denetimi ekleyin.

NamedRange ve ListObject denetimleri eklemek için

  1. Doğrulayın My Excel Eylemler Pane.xlsx Visual Studio tasarımcısında açık çalışma kitabı ile Sheet1 görüntülenir.

  2. Veri Kaynakları penceresinde Suppliers tablosunu genişletin.

  3. CompanyName düğümü üzerindeki açılır oku ve ardından NamedRange'i tıklatın.

  4. Veri Kaynakları penceresinden Sheet1'deki A2 hücresine Company Name'i sürükleyin.

    CompanyNameNamedRange adında bir NamedRange denetimi oluşturulur ve A2 hücresinde <CompanyName> metni görünür.Aynı anda, suppliersBindingSource isimli bir BindingSource, bir tablo bağdaştırıcısı ve bir DataSet projeye eklenir.Denetim, karşılığında DataSet olgusuna bağlanan BindingSource'a bağlanır.

  5. Veri Kaynakları penceresinde Suppliers tablosunun altındaki sütunları aşağı kaydırarak geçiniz.Listenin alt kısmında Products tablosu vardır; alttadır çünkü Suppliers tablosunun bir çocuğudur.Bu Products tablosunu, Suppliers tablosuyla aynı seviyede olanı değil, seçin ve ardından görünen aşağı açılır oku tıklatın.

  6. Açılan listede ListObject'i seçin ve Products tablosunu Sheet1'deki A6 hücresine sürükleyin.

    A6 hücresinde ProductNameListObject adında bir ListObject denetimi oluşturulur.Aynı anda, productsBindingSource isimli bir BindingSource ve bir tablo bağdaştırıcısı projeye eklenir.Denetim, karşılığında DataSet olgusuna bağlanan BindingSource'a bağlanır.

  7. Sadece C# [NULL]'ta seçin suppliersBindingSource bileşen ve değişiklik değiştiriciler özelliği dahili özelliklerini pencere.

Eylemler Bölmesine Denetim Ekleme

Birleşik giriş kutusu içeren bir eylemler bölmesi denetimine ihtiyacınız var.

Eylemler bölmesi denetimi eklemek için

  1. Solution Explorer'da (Çözüm Gezgini) Excel Eylem Bölmem projesini seçin.

  2. Proje menüsünde, Yeni Öğe Ekle'yi tıklatın.

  3. Yeni Öğe Ekle iletişim kutusunda, Eylemler Bölmesi Denetimi'ni seçin ve ActionsControl olarak adlandırın, sonra da Ekle'yi tıklatın.

Eylemler bölmesi denetimine veri bağımlı Windows Forms denetimi eklemek için

  1. Araç Kutusu'nun Genel Denetimler sekmelerinden eylemler bölmesi denetimine bir ComboBox denetimi sürükleyin.

  2. Değişiklik boyutu özelliğine 171, 21.

  3. Kullanıcı denetimini birleşik giriş kutusuna uyması için yeniden boyutlandırın.

Eylemler Bölmesinde Verilere Denetimi Bağlama

Bu bölümde, ComboBox'un veri kaynağını çalışma sayfasındaki NamedRange denetimininki ile aynı veri kaynağına ayarlayacaksınız.

Denetimin veri bağlama özelliklerini ayarlamak için

  1. Eylemler bölmesi denetimini sağ tıklatın ve ardından Kodu Göster'i tıklatın.

  2. Eylemler bölmesi denetiminin Load olayına aşağıdaki kodu ekleyin.

    Private Sub ActionsControl_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Me.Load
    
        Me.ComboBox1.DataSource = Globals.Sheet1.SuppliersBindingSource
        Me.ComboBox1.DisplayMember = "CompanyName" 
    End Sub
    
    private void ActionsControl_Load(object sender, EventArgs e)
    {
        this.comboBox1.DataSource = Globals.Sheet1.suppliersBindingSource;
        this.comboBox1.DisplayMember = "CompanyName";
    }
    
  3. C#'ta ActionsControl için olay işleyicisi oluşturmalısınız.Bu kodu ActionsControl yapıcısına yerleştirebilirsiniz.Olay işleyicisi oluşturma hakkında daha fazla bilgi için, bkz. Nasıl Yapılır: Office Projelerinde Olay İşleyicileri Oluşturma.

    public ActionsControl()
    {
        InitializeComponent();
        this.Load += new EventHandler(ActionsControl_Load);
    }
    

Eylemler Bölmesini Gösterme

Denetimi çalışma zamanında eklemediğiniz sürece eylemler bölmesi görünür değildir.

Eylemler bölmesini göstermek için

  1. Çözüm Gezgini'nde ThisWorkbook.vb veya ThisWorkbook.cs'ye sağ tıklatın ve ardından Kodu Göster'i tıklatın.

  2. ThisWorkbook sınıfında kullanıcı denetiminin yeni bir olgusunu oluşturun.

    Dim actions As New ActionsControl
    
    ActionsControl actions = new ActionsControl();
    
  3. ThisWorkbook'un Startup olay işleyicisinde denetimi eylemler bölmesine ekleyin.

    Private Sub ThisWorkbook_Startup(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Startup
    
        Me.ActionsPane.Controls.Add(actions)
    End Sub
    
    private void ThisWorkbook_Startup(object sender, System.EventArgs e)
    {
        this.ActionsPane.Controls.Add(actions);
    }
    

Uygulamayı Test Etme

Belge açıldığında eylemler bölmesinin açıldığını ve denetimlerde ana/detay ilişkisi bulunduğunu doğrulamak için belgenizi artık sınayabilirsiniz.

Belgenizi test etmek için

  1. F5 tuşuna basarak projeyi çalıştırın.

  2. Eylemler bölmesinin görünür olduğunu doğrulayın.

  3. Liste kutusunda bir şirket seçin.Şirketin adının NamedRange denetiminde, ürün detaylarının ListObject denetiminde listelendiğini doğrulayın.

  4. Başka şirketler de seçip şirket isminin ve ürün detaylarının düzgün olarak değiştiğini doğrulayın.

Sonraki Adımlar

Sonradan gelebilecek bazı görevler:

Ayrıca bkz.

Görevler

Nasıl Yapılır: Eylemler Bölmesindeki Denetim Düzenini Yönetme

Diğer Kaynaklar

Eylemler Bölmesine Genel Bakış

Office Çözümlerinde Verileri Denetimlere Bağlama