Nasıl yapılır: bir ana bilgisayar Denetim verilerle veri kaynağını güncelleştirin
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:
Denetimdeki değişen veriyle bellekteki veri kaynağını güncelleyin.Genellikle, bellekteki veri kaynağı DataSet, DataTable veya başla bir veri nesnesidir.
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. Konak Öğeleri ve Konak Kontrollerine Genel Bakış ve Office Çözümlerinde Veriyi Denetime Bağlama.
Uygulama alanı: Bu konudaki bilgiler şu uygulamaların belge düzeyi projelerine ve uygulama düzeyi projelerine yöneliktir: Excel 2013 ve Excel 2010; Word 2013 ve Word 2010. Daha fazla bilgi için bkz. Office Uygulamalarında Kullanılabilir Özellikler ve Proje Türü.
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
Visual Studio'da, tasarımcıda Word belgesini veya Excel çalışma kitabını açın.
Veri kaynağını otomatik olarak güncellemek istediğiniz denetimi tıklayın.
Özellikler penceresindeki (DataBindings) özelliğini genişletin.
(Advanced) özelliğinin yanındaki, üç nokta düğmesini tıklayın ().
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.
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. DataSet verileri kaydetme ve Nasıl yapılır: bir TableAdapter kullanarak veri güncelleştirme.
Veritabanını güncellemek için
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şenlere 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();
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: bir TableAdapter kullanarak veri güncelleştirme
Nasıl yapılır: veritabanı kayıtlarında bir çalışma sayfasını kaydırma
Nasıl yapılır: bir veritabanından alınan verileri içeren çalışma sayfaları doldurmak
Nasıl yapılır: belgeleri nesneleri verilerle doldurmak
Nasıl yapılır: bir veritabanındaki verileri içeren belgeleri doldurmak
Nasıl yapılır: belgeleri Hizmetleri verilerle doldurmak