İzlenecek yol: Windows Formları Arasında Veri Geçirme
Bu kılavuz için bir formdan verileri geçirmeden yönergeler sağlar.Müşteriler ve siparişler tablolardan Northwind bir form kullanarak, bir müşteri seçmek kullanıcıların izin verir ve ikinci bir form seçili müşteri'nin siparişler görüntüler.Bu kılavuz, bir formda ilk formdan veri alan bir yöntem nasıl oluşturulacağını gösterir.
[!NOT]
Bu kılavuz form arasında veri iletmek için yalnızca bir şekilde gösterir.Bu yaklaşımlardan dahil olmak üzere bir form için veri geçirme için diğer seçenek vardır: veri almak için ikinci bir oluşturucu oluşturabilir veya verilerle ilk formdan ayarlanabilir bir ortak özelliği oluşturabilirsiniz.
Bu izlenecek yolda gösterilen görevler aşağıdakileri içerir:
Yeni bir Windows Uygulaması projesi oluşturma.
Oluşturma ve bir veri kümesiyle yapılandırma Veri Kaynağı Yapılandırma Sihirbazı.
Öğeleri sürükleyerek formda oluşturulmasına denetimi seçme veri kaynakları pencere.Daha fazla bilgi için Nasıl yapılır: Veri Kaynakları Penceresinden Sürüklendiğinde Denetimin Oluşturulmasını Ayarlama.
Veri bağlama denetimi öğelerinden sürükleyerek oluşturma veri kaynakları forma pencere.
İkinci bir form verilerini görüntülemek için olan bir kılavuz oluşturuluyor.
Getirme işlemi için belirli bir müşteri sayısı için TableAdapter sorgu oluşturma.
Form arasındaki veri.
Önkoşullar
Bu yönergeyi tamamlamak için gerekli olanlar:
- Northwind örnek veritabanına erişim.Daha fazla bilgi için Nasıl Yapılır: Örnek Veritabanları Yükleme.
Windows Uygulaması Oluşturma
Yeni Windows projesi oluşturmak için
Öğesinden Dosya menüsü, yeni bir proje oluşturun.
Proje adı PassingDataBetweenForms.
Seçin Windows Forms uygulaması tıklatıp Tamam.Daha fazla bilgi için .NET Framework ile İstemci Uygulamaları Geliştirme.
PassingDataBetweenForms Proje oluşturulur ve eklenen Çözüm Gezgini.
Veri Kaynağı Oluşturma
Veri kaynağı oluşturmak için
Veri menüsünden Veri Kaynaklarını Göster'i tıklatın.
Veri Kaynakları penceresinde, Veri Kaynağı Yapılandırma Sihirbazı'nı başlatmak için Yeni Veri Kaynağı Ekle'yi seçin.
Bir veri Kaynağı Türü Seç sayfasında, Veritabanı'nı seçin ve daha sonra İleri'yi tıklatın.
Üzerinde bir veritabanı modeli seçin sayfasında, doğrulayın veri kümesi belirtilir ve ardından sonraki.
Üzerinde veri bağlantısı seçin sayfasında, aşağıdakilerden birini yapın:
Aşağı açılır listede bir veri bağlantısı Northwind örnek veritabanına kullanılabilir değilse, seçin.
-veya-
Seçin Yeni bağlantı başlatmak için Ekle/Değiştir bağlantı iletişim kutusu.
Veritabanınız bir parola gerektiriyorsa gizli verileri dahil etmek için seçeneği etkinse, seçeneğini tıklatın ve sonra sonraki.
Bağlantı Dizesini Uygulama Yapılandırma Dosyasına Kaydet sayfasında İleri'yi tıklatın.
Veritabanı Nesnenizi Seçin sayfasında Tablolar düğümünü genişletin.
Seçin Müşteriler ve Siparişler tabloları ve sonra Son.
NorthwindDataSet projenize eklenir ve Müşteriler ve siparişler tabloları görünür veri kaynakları pencere.
İlk Form (Form1) oluşturma
Veri bağlama kılavuz oluşturabilirsiniz (bir DataGridView denetimi) sürükleyerek Müşteriler düğümünden veri kaynakları forma pencere.
Bir veri bağlama kılavuz formda oluşturmak için
Ana sürükleyin Müşteriler düğümünden veri kaynakları penceresinden Form1.
Bir DataGridView ve araç şeridi (BindingNavigator) görünür kayıtları gezinmek için Form1.Bir NorthwindDataSet, CustomersTableAdapter, BindingSource ve BindingNavigator bileşen alanında görünür.
İkinci bir Form (Form2) oluşturma
İçin veri iletmek için ikinci bir form oluşturmak için
Öğesinden Proje menüsünde seçin Add Windows Form.
Varsayılan adını bırakın Form2 tıklatıp Ekle.
Ana sürükleyin Siparişler düğümünden veri kaynakları penceresinden Form2.
Bir DataGridView ve araç şeridi (BindingNavigator) görünür kayıtları gezinmek için Form2.Bir NorthwindDataSet, CustomersTableAdapter, BindingSource ve BindingNavigator bileşen alanında görünür.
Silme OrdersBindingNavigator bileşen dışında.
OrdersBindingNavigator öğesinden kaybolur Form2.
Siparişler Form1 seçili müşteri için yüklemek için Form2 TableAdapter sorgu ekleme
Bir TableAdapter sorgu oluşturmak için
Çift NorthwindDataSet.xsd içinde dosya Çözüm Gezgini.
Sağ OrdersTableAdapter seçip Sorgu Ekle.
Varsayılan seçeneği bırakın kullanım SQL deyimleri, ve ardından sonraki.
Varsayılan seçeneği bırakın satır döndüren seçin, ve ardından sonraki.
WHERE yan tümcesi döndürmek için sorguya ekleyin Orders göre CustomerID.Sorgu aşağıdakine benzemelidir:
SELECT OrderID, CustomerID, EmployeeID, OrderDate, RequiredDate, ShippedDate, ShipVia, Freight, ShipName, ShipAddress, ShipCity, ShipRegion, ShipPostalCode, ShipCountry FROM Orders WHERE CustomerID = @CustomerID
[!NOT]
Veritabanı doğru parametresi sözdizimi doğrulayın.Örneğin, Microsoft Access içinde WHERE yan tümcesi aşağıdaki gibidir: WHERE CustomerID = ?.
İleri seçeneğini tıklayın.
İçin DataTable dolguYöntem adı, türü FillByCustomerID.
Temizle DataTable dönmek seçeneğini ve ardından sonraki.
Son düğmesini tıklatın.
Bir yöntem için veri iletmek için Form2 oluşturmak
Veri iletmek için bir yöntem oluşturmak için
Sağ Form2 seçip Görünüm kodu açmak için Form2 içinde Kod Düzenleyicisi.
Aşağıdaki kod ekleyin Form2 sonra Form2_Load yöntemi:
Friend Sub LoadOrders(ByVal CustomerID As String) OrdersTableAdapter.FillByCustomerID(NorthwindDataSet.Orders, CustomerID) End Sub
internal void LoadOrders(String CustomerID) { ordersTableAdapter.FillByCustomerID(northwindDataSet.Orders, CustomerID); }
Bir yöntem Form1 veri geçirmek ve görünen Form2 oluşturmak
Form2 için veri iletmek için bir yöntem oluşturmak için
İçindeki Form1, müşteri verileri kılavuzunu sağ tıklatın ve ardından özellikleri.
İçindeki özellikleri penceresinde tıklatın olayları.
Çift CellDoubleClick olay.
Kod düzenleyicisi görünür.
Aşağıdaki örnek eşleştirmek için yöntem tanımı güncelleştirme:
Private Sub CustomersDataGridView_DoubleClick() Handles CustomersDataGridView.DoubleClick Dim SelectedRowView As Data.DataRowView Dim SelectedRow As NorthwindDataSet.CustomersRow SelectedRowView = CType(CustomersBindingSource.Current, System.Data.DataRowView) SelectedRow = CType(SelectedRowView.Row, NorthwindDataSet.CustomersRow) Dim OrdersForm As New Form2 OrdersForm.LoadOrders(SelectedRow.CustomerID) OrdersForm.Show() End Sub
private void customersDataGridView_DoubleClick(object sender, EventArgs e) { System.Data.DataRowView SelectedRowView; NorthwindDataSet.CustomersRow SelectedRow; SelectedRowView = (System.Data.DataRowView)customersBindingSource.Current; SelectedRow = (NorthwindDataSet.CustomersRow)SelectedRowView.Row; Form2 OrdersForm = new Form2(); OrdersForm.LoadOrders(SelectedRow.CustomerID); OrdersForm.Show(); }
Uygulamayı Çalıştırın
Uygulamayı çalıştırmak için
Uygulamayı çalıştırmak için F5'e basın.
Müşteri kaydında çift Form1 açmak için Form2 Müşteri'nin sipariş.
Sonraki Adımlar
Uygulama gereksinimlerinize bağlı olarak, formlar arasında verileri geçirmeden sonra gerçekleştirmek istediğiniz birkaç adım vardır.Bu izlenecek yolda yapabileceğiniz bazı geliştirmeler şunlardır:
Veritabanı nesne eklemek veya çıkartmak için veri kümesi, düzenleme.Daha fazla bilgi için Nasıl Yapılır: Bir Veri Kümesini Düzenleme.
Veritabanına veri kaydetmek için işlevselliği ekleme.Daha fazla bilgi için Nasıl yapılır: Veri Kümesi Değişikliklerini Veritabanına Kaydetme.
Ayrıca bkz.
Kavramlar
Visual Studio'da Verilere Windows Forms Denetimleri Bağlama
Uygulamanızı Veri Almaya Hazırlama
Visual Studio'da Verilere Denetimler Bağlama
Uygulamanızdaki Verileri Düzenleme