Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Sınıf DataSet ve ilgili sınıflar, uygulamaların veritabanıyla bağlantısı kesilirken uygulamaların bellekteki verilerle çalışmasını sağlayan 2000'lerin başlarındaki eski .NET Framework teknolojileridir. Teknolojiler özellikle kullanıcıların verileri değiştirmesine ve değişiklikleri veritabanında kalıcı hale getirebilmesine olanak tanıyan uygulamalar için kullanışlıdır. Veri kümeleri başarısı kanıtlanmış bir teknoloji olsa da, yeni .NET uygulamaları için önerilen yaklaşım Entity Framework Core kullanmaktır. Entity Framework, tablosal verilerle nesne modelleri olarak çalışmak için daha doğal bir yol sağlar ve daha basit bir programlama arabirimine sahiptir.
Bu öğretici, verileri bir formdan diğerine geçirmeye yönelik adım adım yönergeler sağlar. Northwind örnek veritabanındaki Müşteriler ve Siparişler tablolarını kullanarak, bir form kullanıcıların bir müşteri seçmesine olanak tanır ve ikinci bir form seçili müşterinin siparişlerini görüntüler. Bu öğreticide, ikinci formda ilk formdan veri alan bir yöntemin nasıl oluşturulacağı gösterilmektedir.
Bu öğreticide aşağıdaki görevleri tamamlaacaksınız:
- Yeni bir Windows Forms Uygulaması (.NET Framework) projesi oluşturun.
- Veri Kaynağı Yapılandırma Sihirbazı'nı kullanarak veri kümesi oluşturun ve yapılandırın.
- Öğeleri Veri Kaynakları penceresinden sürüklerken formda oluşturulacak denetimi seçin. Daha fazla bilgi için bkz. Veri Kaynakları penceresinden sürüklenirken oluşturulacak denetimi ayarlama.
- Öğeleri Veri Kaynakları penceresinden bir forma sürükleyerek veriye bağlı denetim oluşturun.
- Verileri görüntüleyen bir tablo ile ikinci bir form oluşturun.
- Belirli bir
TableAdaptermüşterinin siparişlerini getirmek için bir sorgu oluşturun. - Formlar arasında veri geçirme.
Uyarı
Bu öğreticide formlar arasında veri geçirmenin tek bir yolu gösterilmektedir. Verileri forma geçirmek için, verileri almak için ikinci bir oluşturucu oluşturma veya ilk formdaki verilerle ayarlanabilen bir ortak özellik oluşturma gibi başka seçenekler de vardır.
Önkoşullar
Visual Studio'da yüklü .NET masaüstü geliştirmeve Veri depolama ve işleme iş yükleri. Bunları yüklemek için Visual Studio Yükleyicisi'ni açın ve kullanmak istediğiniz Visual Studio sürümünün yanındaki Değiştir veya Daha Fazla>Değiştir'i seçin. Daha fazla bilgi için bkz. Visual Studio'yu değiştirme.
SQL Server indirmeleri sayfasından veya Veri depolama ve işleme iş yükünün bir parçası olarak Visual Studio Yükleyicisi aracılığıyla yüklenen SQL Server Express 2019 LocalDB.
Aşağıdaki adımları izleyerek oluşturulan Northwind örnek veritabanı:
Visual Studio'da, Görünüm menüsünden seçerek SQL Server Nesne Gezgini penceresini açın. SQL Server Nesne Gezgini, Veri depolama ve işleme iş yükünün bir parçası olarak yüklenir.
SQL Server düğümünü genişletin, LocalDB örneğinize sağ tıklayın ve Sorgu düzenleyicisi penceresini açmak için Yeni Sorgu'yu seçin.
Northwind Transact-SQL betiğini panonuza kopyalayın. Bu T-SQL betiği Northwind veritabanını oluşturur ve verilerle doldurur.
T-SQL betiğini sorgu düzenleyicisine yapıştırın ve pencerenin üst kısmındaki Yürüt'e seçerek Northwind veritabanını oluşturun.
Windows Forms uygulama projesi oluşturma
Visual Studio'da, Dosya menüsünde Yeni Proje'yi> seçin.
Tüm diller açılan listesinden C# veya Visual Basic, Tüm platformlar açılan listesinden Windows ve Tüm proje türleri listesinden Masaüstü'nü seçin.
Proje şablonları listesinden Windows Forms Uygulaması (.NET Framework) öğesini ve ardından İleri'yi seçin.
Projeyi PassingDataBetweenForms olarak adlandırın, İleri'yi ve ardından Oluştur'u seçin.
PassingDataBetweenForms projesi oluşturulur ve Çözüm Gezgini'ne eklenir. Form1'in tasarımcı görünümü düzenleyicide görünür.
Veri kaynağını oluşturma
Visual Studio menüsünde Proje> seçerek Veri Kaynakları penceresini açın.
Veri Kaynağı Yapılandırma sihirbazını başlatmak için Veri Kaynakları penceresinde Yeni Veri Kaynağı Ekle'yi seçin.
Veri Kaynağı Türü Seçin sayfasında Veritabanı'nı ve ardından İleri'yi seçin.
Veritabanı Modeli Seçin sayfasında Veri Kümesinin belirtildiğini doğrulayın ve İleri'yi seçin.
Veri Bağlantınızı Seçin sayfasında, Northwind örnek veritabanına bir veri bağlantısı zaten varsa, bunu seçin ve Veritabanı Nesnelerinizi Seçin adımına geçin. Aksi takdirde Yeni Bağlantıseçin.
Veri Kaynağı Seç ekranında Microsoft SQL Server Veritabanı Dosyası'nı ve ardından Devam'ı seçin.
Bağlantı Ekle ekranında Gözat'ı seçin, northwnd.mdf dosyasını bulun ve seçin, sonra Aç'ı seçin.
Windows Kimlik Doğrulaması'nı seçin veya SQL Server Kimlik Doğrulaması'nı seçin ve veritabanına erişmek için bir kullanıcı adı ve parola sağlayın.
Bağlantıyı test etmek için Bağlantıyı Test Et'i seçin. Bağlantı başarılı olduğunda Tamam'ı seçin.
Veri Bağlantınızı Seçin sayfasında veritabanı dosyasının göründüğünü onaylayın ve İleri'yi seçin.
Açılan soruda Hayır'ı seçin Dosyayı projenize kopyalamak ve bağlantıyı değiştirmek istiyor musunuz?
Bağlantı Dizesini Uygulama Yapılandırma dosyasına kaydet sayfasında Evet'i seçin. Bağlantıya NorthwindConnectionString adını verin ve İleri'yi seçin.
Veritabanı Nesnelerinizi seçin sayfasında Tablolar düğümünü genişletin, Müşteriler ve Siparişler tablolarını seçin, veri kümesini NorthwindDataSet olarak adlandırın ve ardından Son'u seçin.
NorthwindDataSet projenize eklenir ve Veri Kaynakları penceresinde Müşteriler ve Siparişler tabloları görüntülenir.
İlk formu doldurma
Veriye bağlı kılavuz oluşturmak için Müşteriler düğümünü Veri Kaynakları penceresinden Form1'e sürükleyin.
DataGridView BindingNavigator kayıtlarda gezinmek için bir denetim ve araç şeridi görüntülenir. Bileşen tepsisinde NorthwindDataSet,
CustomersTableAdapter, BindingSource, ve BindingNavigator görünür.
İkinci formu oluşturma
Veri geçirmek için ikinci bir form oluşturun.
Proje menüsünde Form Ekle 'yi (Windows Forms) seçin.
Varsayılan Form2 adını bırakın ve Ekle'yi seçin.
Ana Siparişler düğümünü Veri Kaynakları penceresinden Form2'ye sürükleyin.
DataGridView ve BindingNavigator araç şeridi ile kayıtlarda gezinmek için Form2'de bir şerit görüntülenir. Bileşen tepsisinde NorthwindDataSet,
CustomersTableAdapter, BindingSource, ve BindingNavigator görünür.OrdersBindingNavigator öğesini bileşen tepsisinden silin. BindingNavigatorForm2'den kaybolur.
TableAdapter sorgusu ekleme
Form2'ye Form1'de seçilen müşterinin siparişlerini yükleyen bir TableAdapter sorgu ekleyin.
Çözüm Gezgini'ndeNorthwindDataSet.xsd dosyasına çift tıklayın.
Siparişler tablosunda OrdersTableAdapter'a sağ tıklayın veSorguEkle'yi> seçin.
Varsayılan SQL deyimlerini kullan seçeneğini bırakın ve İleri'yi seçin.
Satırları döndüren varsayılan SELECT seçeneğini bırakın ve İleri'yi seçin.
Hangi verileri tablonun yüklemesi gerektiği konusunda,
Orderstemel alınarakCustomerIDdöndürmek için sorgunun sonuna birWHEREyan tümcesi ekleyin. Son sorgu aşağıdaki koda benzer görünmelidir:SELECT OrderID, CustomerID, OrderDate, RequiredDate, ShippedDate, ShipVia, Freight, ShipName, ShipAddress, ShipCity, ShipRegion, ShipPostalCode, ShipCountry FROM Orders WHERE CustomerID = @CustomerIDUyarı
Veritabanınız için doğru parametre söz dizimini kullanın. Örneğin, Microsoft Access'te cümle
WHEREgibiWHERE CustomerID = ?görünür.sonrakiseçin.
Oluşturulacak Yöntemleri Seçin ekranında Bir DataTable Doldur'u seçin ve FillByCustomerID girin.
DataTable Döndür seçeneğinin seçimini kaldırın ve ardından Tamamla seçin.
Form2'de veri geçirmek için bir yöntem oluşturma
Form2'ye sağ tıklayın ve Kodu Görüntüle'yi seçerek Form2 kodunu düzenleyicide açın.
Form2 kodunda yönteminin
Form2_Loadiçeriğini kaldırın ve yönteminden sonraForm2_Loadaşağıdaki kodu ekleyin:
internal void LoadOrders(String CustomerID)
{
ordersTableAdapter.FillByCustomerID(northwindDataSet.Orders, CustomerID);
}
Form1'de veri geçirmek ve Form2'yi görüntülemek için bir yöntem oluşturma
Form1'in Tasarımcı görünümünde Müşteri veri kılavuzuna sağ tıklayın ve özellikler'i seçin.
Özellikler penceresinde, üst araç çubuğundaki Olaylar simgesini seçin.
Kod düzenleyicisini açmak için DoubleClick olayına çift tıklayın.
Kod düzenleyicisinde yöntem tanımını aşağıdaki örnekle eşleşecek şekilde güncelleştirin:
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ırma ve test edin
Uygulamayı çalıştırmak için F5 basın.
Uygulamada, Form1'de bir müşteri kaydına çift tıklayarak Bu müşterinin siparişleriyle Form2'yi açın.
Sonraki Adımlar
Uygulama gereksinimlerinize bağlı olarak, formlar arasında veri geçtikten sonra birkaç adım uygulayabilirsiniz. Bu öğreticide yapabileceğiniz bazı geliştirmeler şunlardır:
Veritabanı nesneleri eklemek veya kaldırmak için veri kümesini düzenleme. Daha fazla bilgi için bkz. Veri kümeleri oluşturma ve yapılandırma.
Verileri veritabanına geri kaydetmek için işlevsellik ekleme. Daha fazla bilgi için bkz. Verileri veritabanına geri kaydetme.
İlgili içerik
- Visual Studio'da Windows Forms denetimlerini verilere bağlama