Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

NET C-Sharp: 2x Dataadapter mit unterschiedlichem Select

Frage Entwicklung Visual Studio

Mitglied: 14116

14116 (Level 1)

21.01.2015, aktualisiert 09.02.2015, 733 Aufrufe, 2 Kommentare

Hallo,


im Unten angeführetem C# Code, verwende ich eine Form mit zwei DataGridViews an einer AccessDatenbank, angebunden via ODBC.
Das Ganze soll eine MASTER/DETAIL Ansicht sein.

Wenn im DgvPackageSelectionChanged das return auskommentiert wird, so funktioniert das erste Select * from Package wunderbar.
Alle Daten sind im DataGridView ersichtlich.

Läuft nun auch das OnSelect, so vernichtet der 2. Befehl dataAdapter.Fill(ds) die Ansicht des ersten DataGridViews?

Wieso?

Ich verwende doch unterschiedliche Instanzen?


Bitte um Hilfe.

LG
Günter




01.
/* 
02.
 * Created by SharpDevelop. 
03.
 */ 
04.
using System; 
05.
using System.Collections.Generic; 
06.
using System.Drawing; 
07.
using System.Net.Mime; 
08.
using System.Windows.Forms; 
09.
 
10.
using System.Data; 
11.
using System.Data.Odbc; 
12.
using System.Data.Common; 
13.
using System.Data.Sql; 
14.
using System.Data.SqlClient; 
15.
using System.Windows.Forms.VisualStyles; 
16.
 
17.
namespace PinTest 
18.
19.
	/// <summary> 
20.
	/// Description of MainForm. 
21.
	/// </summary> 
22.
	///  
23.
	public partial class MainForm : Form 
24.
25.
		OdbcConnection connA; 
26.
		OdbcConnection connB; 
27.
		 
28.
		public MainForm() 
29.
30.
			// 
31.
			// The InitializeComponent() call is required for Windows Forms designer support. 
32.
			// 
33.
			InitializeComponent(); 
34.
			 
35.
			// 
36.
			// TODO: Add constructor code after the InitializeComponent() call. 
37.
			// 
38.
			 
39.
	        // Verbindung herstellen 
40.
	        connA = new OdbcConnection();	         
41.
	        connA.ConnectionString =   
42.
	        	@"Driver={Microsoft Access Driver (*.mdb)};" + 
43.
	        	@"Dbq=D:\_src\Database\Database.mdb;Uid=Admin;Pwd=;"; 
44.
	        //connA.Open(); 
45.
 
46.
	        connB = new OdbcConnection();	         
47.
	        connB.ConnectionString =   
48.
	        	@"Driver={Microsoft Access Driver (*.mdb)};" + 
49.
	        	@"Dbq=D:\_src\Database\Database.mdb;Uid=Admin;Pwd=;"; 
50.
	        //connB.Open(); 
51.
	         
52.
			 
53.
			dgvPackage.MultiSelect=false; 
54.
			dgvPackage.ReadOnly=true; 
55.
			dgvPackage.SelectionMode=DataGridViewSelectionMode.FullRowSelect; 
56.
 
57.
			dgvMeasurement.MultiSelect=false; 
58.
			dgvMeasurement.ReadOnly=true; 
59.
			dgvMeasurement.SelectionMode=DataGridViewSelectionMode.FullRowSelect; 
60.
61.
		void MenuStrip1ItemClicked(object sender, ToolStripItemClickedEventArgs e) 
62.
		{	 
63.
64.
		void QuitToolStripMenuItemClick(object sender, EventArgs e) 
65.
66.
			Application.Exit(); 
67.
68.
		void CreateDatabaseToolStripMenuItemClick(object sender, EventArgs e) 
69.
70.
			System.Windows.Forms.FolderBrowserDialog objDialog = new FolderBrowserDialog(); 
71.
			objDialog.Description = "Select Path for Database"; 
72.
			objDialog.SelectedPath=@".";       // Vorgabe Pfad (und danach der gewählte Pfad)			 
73.
			 
74.
			if (objDialog.ShowDialog(this) == DialogResult.OK) 
75.
    			MessageBox.Show("New Path: " + objDialog.SelectedPath); 
76.
		}		 
77.
		void OpenDatabaseToolStripMenuItemClick(object sender, EventArgs e) 
78.
79.
		    try 
80.
81.
		        connA.Open(); 
82.
 
83.
		        string sql = @"select * from [Package]";		        
84.
		        OdbcDataAdapter dataAdapter = new OdbcDataAdapter(sql, connA); 
85.
		        //OdbcDataReader dataReader = new OdbcDataReader(sql, connA); 
86.
		         
87.
		        DataSet ds = new DataSet(); 
88.
		        ds.Clear(); 
89.
				dataAdapter.Fill(ds, "Package"); 
90.
				 
91.
 
92.
				connA.Close(); 
93.
				 
94.
				dgvPackage.DataSource = ""; 
95.
				dgvPackage.DataSource = ds; 
96.
				dgvPackage.DataMember = "Package"; 
97.
				dgvPackage.AutoGenerateColumns=true; 
98.
				dgvPackage.AutoResizeColumns( 
99.
					DataGridViewAutoSizeColumnsMode.ColumnHeader);	 
100.
				dgvPackage.Show(); 
101.
102.
		    catch (Exception) 
103.
104.
105.
		    finally 
106.
107.
		        // aufräumen 
108.
		        /* 
109.
		        if (reader != null) reader.Close(); 
110.
		        if (conn != null) conn.Close(); 
111.
		        */ 
112.
113.
		     
114.
115.
		void DataGridView1KeyDown(object sender, KeyEventArgs e) 
116.
117.
			if (e.KeyCode == Keys.Insert) 
118.
119.
				MessageBox.Show("Insert"); 
120.
121.
122.
		void DetailToolStripMenuItemClick(object sender, EventArgs e) 
123.
124.
125.
		void DgvPackageSelectionChanged(object sender, EventArgs e) 
126.
127.
			//return; 
128.
			 
129.
			// int rowIndex =  dataGridView1.CurrentRow.Index; 
130.
			// toolStripStatusLabel1.Text = rowIndex.ToString(); 
131.
			string id = dgvPackage.CurrentRow.Cells[0].Value.ToString(); 
132.
			string sPart = dgvPackage.CurrentRow.Cells[1].Value.ToString(); 
133.
			string sPackage = dgvPackage.CurrentRow.Cells[2].Value.ToString(); 
134.
			//toolStripStatusLabel1.Text = sPart + " | " + sPackage; 
135.
			 
136.
			 
137.
			// SQL-Kommando abschicken 
138.
			connB.Open(); 
139.
			 
140.
			string sql = @"SELECT ALL Moment FROM [Moment] WHERE (ID_Name LIKE " + id + ")]";		 
141.
			OdbcDataAdapter dataAdapter = new OdbcDataAdapter(sql, connB);  
142.
		         
143.
			DataSet ds = new DataSet(); 
144.
			ds.Clear(); 
145.
			dataAdapter.Fill(ds, "Moment"); 
146.
			 
147.
			connB.Close(); 
148.
		         
149.
			dgvMeasurement.DataSource = "";			 
150.
			dgvMeasurement.DataSource = ds; 
151.
			dgvMeasurement.DataMember = "Moment"; 
152.
			dgvMeasurement.AutoResizeColumns( 
153.
				DataGridViewAutoSizeColumnsMode.ColumnHeader);					 
154.
155.
		void DgvMeasurementSelectionChanged(object sender, EventArgs e) 
156.
157.
	 
158.
159.
160.
161.
 
Mitglied: 114757
LÖSUNG 21.01.2015, aktualisiert 09.02.2015
Moin Günter,
deine Datasets sind nur in den Prozeduren vorhanden, sobald die jeweilige Prozedur aber beendet ist, wird auch das Dataset zerstört ( ist ja nur eine lokale Prozedurvariable)...und somit hat das Datagridview keine Datenquelle mehr, ganz einfach
Du musst deine Datasets also außerhalb der Prozeduren deklarieren, damit diese Prozedurübergreifend erhalten bleiben.

Gruß jodel32
Bitte warten ..
Mitglied: 114757
08.02.2015 um 20:05 Uhr
Wenns das dann war gelöst nicht vergessen. Danke.
Bitte warten ..
Ähnliche Inhalte
C und C++
Einfacher Webserver in C mit select()
Frage von Ah3n0bar6usC und C++1 Kommentar

Hallo liebe Fachleute, mein Kommilitone und ich sind ziemlich am verzweifeln, da unsere letzte Aufgabe im Studium eine "einfache" ...

IDE & Editoren
IDE für C-Sharp und C++ auf Windows
gelöst Frage von BugdroidIDE & Editoren8 Kommentare

Hallo, Ich nutze derzeit Visual Studio, aber auf Dauer ist es mir etwas zu Ressourcenfressend und für meine Zwecke ...

Visual Studio
C-Sharp WPF ListView Select nur bei bestimmter Spalte (2 Fragen in einer)
gelöst Frage von mayho33Visual Studio3 Kommentare

Hallo @ All, Ich knabbere wieder mal an einem Problem mit ListViewItems und hoffe (wieder mal :-) ) auf ...

C und C++
C Sharp XAML Universal
Frage von DippsC und C++3 Kommentare

Hallo ich versuche gerade mit C#2015 ein Projekt Universal XAML zu erstellen um auf einem Raberry PI 2 mit ...

Neue Wissensbeiträge
Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 1 TagMicrosoft Office9 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 1 TagSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

Microsoft Office

Outlook 2016 - Beim Weiterleiten keine PDF Anhänge mehr - KB4011626 entfernen

Erfahrungsbericht von Deepsys vor 1 TagMicrosoft Office3 Kommentare

Wenn ihr feststellt das ihr beim Weiterleiten von E-Mails keine PDF Anhänge mehr versendent, dann dankt Microsoft. Diese tolle ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner15 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...