Aracılığıyla paylaş


Nasıl Yapılır: Konak Kontrolü Verileriyle Veri Kaynağını Güncelleme

Veri kaynağına veri kontrolü bağlayabilir ve denetimdeki veriye yapılan değişikliklerle veri kaynağını güncelleyebilirsiniz.Bu işlemde 2 ana basamak vardır:

  1. Denetimdeki değişen veriyle bellekteki veri kaynağını güncelleyin.Genellikle, bellekteki veri kaynağı DataSet, DataTable veya başla bir veri nesnesidir.

  2. Bellekteki veri kaynağında değişen veriyle veritabanını güncelleyin.Bu sadece veri kaynağı uç veritabanına bağlandığında uygulanabilir, örn. SQL Server veya Microsoft Office Access veritabanı.

Konak kontrolleri ve veri bağlama hakkında daha fazla bilgi için bkz. Ana Bilgisayar Öğelerine ve Denetimlerine Genel Bakış ve Office Çözümlerinde Verileri Denetimlere Bağlama.

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

Bellekteki Veri Kaynağını Güncelleme

Varsayılan olarak, basit veri bağlamasına (Word belgesindeki içerik denetimleri ve Excel çalışma sayfasındaki isimlendirilmiş aralık denetimi gibi) olanak sağlayan konak kontrolleri bellekteki veri kaynağında değişiklikleri kaydetmez.Son kullanıcı konak kontrolündeki bir değeri değiştirirse ve sonra denetimden uzaklaşırsa, denetimdeki yeni değer otomatik olarak veri kaynağına kaydedilmez.

Veri kaynağına veri kaydetmek için, çalışma zamanında belirli bir olaya yanıt olarak veri kaynağını değiştiren kod yazabilirsiniz veya denetimdeki değer değiştiğinde veri kaynağını otomatik olarak güncellemek için denetimi yapılandırabilirsiniz.

Bellekteki veri kaynağına ListObject değişikliklerini kaydetmenizde gerek yoktur.Veriye ListObject denetimi bağladığınızda, ek bir koda gerek duymadan, ListObject denetimi otomatik olarak bellekteki veri kaynağına değişiklikleri kaydeder.

Çalışma zamanında bellekteki veri kaynağını güncellemek için

  • Veri kaynağına denetimleri bağlayan Binding nesnesinin WriteValue yöntemini çağırın.

    Aşağıdaki örnekte, Excel çalışma sayfasındaki NamedRange denetimine yapılan değişiklikler veri kaynağına kaydedilir.Bu örnekte namedRange1 isimli NamedRange denetiminin, veri kaynağındaki bir alana bağlı olan Value2 özelliği olduğu varsayılır.

    Me.NamedRange1.DataBindings("Value2").WriteValue()
    
    this.namedRange1.DataBindings["Value2"].WriteValue();
    

Bellekteki Veri Kaynağını Otomatik Olarak Güncelleme

Denetimin otomatik olarak bellekteki veri kaynağını güncellemesi için denetimi yapılandırabilirsiniz.Belge düzeyi projelerinde, kodu veya tasarımcıyı kullanarak bunu yapabilirsiniz.Uygulama düzeyi projelerinde, kodu kullanmalısınız.

Kod kullanarak bellekteki veri kaynağını otomatik bir şekilde güncellemek amacıyla denetimi ayarlamak için

  • Veri kaynağına denetimleri bağlayan T:System.Windows.Forms.Binding nesnesinin [System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged] modunu kullanın. Veri kaynağını güncellemenin iki seçeneği vardır:

    • Denetim doğrulandığında veri kaynağını güncellemek için, bu özelliği System.Windows.Forms.DataSourceUpdateMode.OnValidation'a ayarlayın.

    • Denetimin veri bağlama özelliğinin değeri değiştiğinde veri kaynağını güncellemek için, bu özelliği System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged'a ayarlayın.

      [!NOT]

      System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged seçeneği Word konak kontrollerine uygulanmaz çünkü Word belge değişikliği veya denetim değişikliği bildirimlerini sunmaz.Fakat, bu seçenek Word belgelerindeki Windows Forms denetimleri için kullanılabilir.

    Aşağıdaki örnekte, denetimdeki değer değiştiğinde veri kaynağını otomatik olarak güncellemek için NamedRange denetimi yapılandırılır.Bu örnekte namedRange1 isimli NamedRange denetiminin, veri kaynağındaki bir alana bağlı olan Value2 özelliği olduğu varsayılır.

    Me.NamedRange1.DataBindings("Value2").DataSourceUpdateMode = _
        DataSourceUpdateMode.OnPropertyChanged
    
    this.namedRange1.DataBindings["Value2"].DataSourceUpdateMode = 
        DataSourceUpdateMode.OnPropertyChanged;
    

Tasarımcı kullanarak bellekteki veri kaynağını otomatik bir şekilde güncellemek amacıyla denetimi ayarlamak için

  1. Visual Studio'da, tasarımcıda Word belgesini veya Excel çalışma kitabını açın.

  2. Veri kaynağını otomatik olarak güncellemek istediğiniz denetimi tıklayın.

  3. Özellikler penceresindeki (DataBindings) özelliğini genişletin.

  4. (Advanced) özelliğinin yanındaki, üç nokta düğmesini tıklayın (VisualStudioEllipsesButton ekran görüntüsü).

  5. Biçimlendirme ve Gelişmiş Bağlama iletişim kutusunda, Veri Kaynağı Güncelleme Modu açılan listeyi tıklayın ve aşağıdaki değerlerden bir tanesini tıklayın.

    • Denetim doğrulandığında veri kaynağını güncellemek için, OnValidation'ı seçin.

    • Denetimin veri bağlama özelliğinin değeri değiştiğinde veri kaynağını güncellemek için, OnPropertyChanged'i seçin.

      [!NOT]

      OnPropertyChanged seçeneği Word konak kontrollerine uygulanmaz çünkü Word belge değişikliği veya denetim değişikliği bildirimlerini sunmaz.Fakat, bu seçenek Word belgelerindeki Windows Forms denetimleri için kullanılabilir.

  6. Biçimlendirme ve Gelişmiş Bağlama iletişim kutusunu kapatın.

Veritabanını Güncelleme

Eğer bellekteki veri kaynağı bir veritabanıyla ilişkiliyse, veri kaynağındaki değişikliklerle veritabanını güncellemelisiniz.Varitabanını güncelleme hakkında daha fazla bilgi için, bkz. Veri Kümelerindeki Verileri Kaydetme ve Nasıl yapılır: TableAdapter Kullanarak Veri Güncelleştirme.

Veritabanını güncellemek için

  1. BindingSource'un EndEdit yöntemini denetim için çağırın.

    Tasarım zamanında belgeye veya çalışma kitabına veri bağlama denetimi eklediğinizde, BindingSource otomatik olarak oluşturulur.BindingSource, denetimi projenizdeki türü belirtilmiş veri kümesine bağlar.Daha fazla bilgi için bkz. BindingSource Bileşenine Genel Bakış.

    Aşağıdaki kod örneğinde projenizin customersBindingSource adı verilmiş BindingSource içerdiği varsayılır.

    Me.CustomersBindingSource.EndEdit()
    
    this.customersBindingSource.EndEdit();
    
  2. Projenizde yaratılmış TableAdapter'ın Update yöntemini çağırın.

    Tasarım zamanında belgeye veya çalışma kitabına veri bağlama denetimi eklediğinizde, TableAdapter otomatik olarak oluşturulur.TableAdapter, denetimi projenizdeki türü belirtilmiş veri kümesini veritabanına bağlar.Daha fazla bilgi için bkz. TableAdapter Genel Bakışı.

    Aşağıdaki kod örneğinde, Northwind veritabanında Customers tablosuna bir bağlantınız olduğu ve projenizin customersTableAdapter adı verilen TableAdapter ve northwindDataSet adı verilen türü belirtilmiş bir veri kümesine sahip olduğu varsayılır.

    Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers)
    
    this.customersTableAdapter.Update(this.northwindDataSet.Customers);
    

Ayrıca bkz.

Görevler

Nasıl yapılır: TableAdapter Kullanarak Veri Güncelleştirme

Nasıl Yapılır: Çalışma Sayfasındaki Veritabanı Kayıtları Arasında Kaydırma

Nasıl Yapılır: Çalışma Sayfalarını Veritabanı Verileriyle Doldurma

Nasıl Yapılır: Belgeleri Nesne Verileriyle Doldurma

Nasıl Yapılır: Belgeleri Veritabanı Verileriyle Doldurma

Nasıl Yapılır: Belgeleri Hizmet Verileriyle Doldurma

Kavramlar

Veri Kümelerindeki Verileri Kaydetme

Diğer Kaynaklar

Office Çözümlerinde Verileri Denetimlere Bağlama