Beste Forumleden,
Als opdracht voor het vak programmeren, moet ik in c# een database applicatie maken. Het project wat ik bedacht heb is het maken van een soort van Magister(leerlingvolgsysteem). (MOET MET DATASET)
Ik heb tot nu toe dat ik via textboxen dingen kan zetten in een *.XML file, zoals naam, achternaam, woonplaats etc.
Het enige probleem wat ik nu heb is dat ik ook per leerling een cijfer wil kunnen invoeren in de applicatie. Dit gaat door middel van een DataGridView, het enige wat me tot nu toe gelukt is is dat ik in het datagridview wel de leerlingen kan tonen. In de Dataset heb ik een apparte tabel gemaakt voor de cijfers en heb ik kolommen met een aantal schoolvakken zoals : Nederlands, Engels, Wiskunde etc.
Ik zou graag willen weten hoe ik de "Cijfers" tabel kan verbinden met de ID van het "Leerlingen", zodat als ik op de knop "next" druk, dat de resultaten van de volgende leerlingen in het datagridview zichtbaar worden.
Ik upload hierbij eventjes mijn project-map.
Hier de code van form1:
link naar projectmap : http://www.mediafire.com/?fj9tk9jcm32jdth
Bij voorbaat dank!
Als opdracht voor het vak programmeren, moet ik in c# een database applicatie maken. Het project wat ik bedacht heb is het maken van een soort van Magister(leerlingvolgsysteem). (MOET MET DATASET)
Ik heb tot nu toe dat ik via textboxen dingen kan zetten in een *.XML file, zoals naam, achternaam, woonplaats etc.
Het enige probleem wat ik nu heb is dat ik ook per leerling een cijfer wil kunnen invoeren in de applicatie. Dit gaat door middel van een DataGridView, het enige wat me tot nu toe gelukt is is dat ik in het datagridview wel de leerlingen kan tonen. In de Dataset heb ik een apparte tabel gemaakt voor de cijfers en heb ik kolommen met een aantal schoolvakken zoals : Nederlands, Engels, Wiskunde etc.
Ik zou graag willen weten hoe ik de "Cijfers" tabel kan verbinden met de ID van het "Leerlingen", zodat als ik op de knop "next" druk, dat de resultaten van de volgende leerlingen in het datagridview zichtbaar worden.
Ik upload hierbij eventjes mijn project-map.
Hier de code van form1:
Code:
//// ////////////////////////////////////////////////////////////////////////////////
private void MyInitialize()// eigen methode
{
if (File.Exists(filename))
{
personenSet.ReadXml(filename);
}
else
{
openFD.FileName = "XML File|*.xml";
openFD.Title = "Open de database...";
openFD.ShowDialog();
personenSet.ReadXml(openFD.FileName);
}
Verzameling.DataSource = personenSet.Tables["Personen"];
cijfersGridView.DataSource = personenSet;
cijfersGridView.DataMember = "Cijfers";
//linkt de textboxen naar de datatables
this.txtNaam.DataBindings.Add(new Binding("Text", Verzameling, "Naam"));
this.txtAchternaam.DataBindings.Add(new Binding("Text", Verzameling, "Achternaam"));
this.txtStraat.DataBindings.Add(new Binding("Text", Verzameling, "Straat"));
this.txtHuisnummer.DataBindings.Add(new Binding("Text", Verzameling, "Huisnummer"));
this.txtPlaats.DataBindings.Add(new Binding("Text", Verzameling, "Plaats"));
this.txtPostcode.DataBindings.Add(new Binding("Text", Verzameling, "Postcode"));
this.comboBox1.DataBindings.Add(new Binding("Text", Verzameling, "Geslacht"));
this.dateGeboorte.DataBindings.Add(new Binding("Text", Verzameling, "Geboortedatum"));
this.txtHuistel.DataBindings.Add(new Binding("Text", Verzameling, "Huistelefoon"));
this.txtMobiel.DataBindings.Add(new Binding("Text", Verzameling, "Mobiel"));
this.lijstNav.BindingSource = Verzameling;
}
///// /////////////////////////////////////////////////////////////////////////////////////////////////////
//als form word afgesloten word het opgeslagen
void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (savingnodig)
{
Verzameling.EndEdit();
personenSet.WriteXml(filename);
}
}
//telefooncheck alleen nummers
private void txtHuistel_KeyPress(object sender, KeyPressEventArgs e)
{
if (char.IsDigit(e.KeyChar))
{
return;
}
if (e.KeyChar == (char)Keys.Back)
{
return;
}
if (e.KeyChar == '.' && !txtHuistel.Text.Contains('.'))
{
return;
}
e.Handled = true;
}
///Menustrip//////////////////////////////////////////////////////////////////
//slaat bestanden op
private void btnSave_Click(object sender, EventArgs e)
{
personenSet.WriteXml(filename);//schrijft naar "filename"
}
//opent een geselecteerde database
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
int aantalLeerlingen = 0;
openFD.InitialDirectory = "C:";//hoofdmap
openFD.Title = "Kies het XML-Bestand";//titel van het filedialog scherm
openFD.FileName = "";//standaard bestandsnaam
openFD.Filter = "Text Files|*.xml";//bestandstypes filter
if (openFD.ShowDialog() == System.Windows.Forms.DialogResult.OK)//als op ok word gedrukt
{
personenSet.ReadXml(openFD.FileName);//open gekozen bestand en lees in
aantalLeerlingen = personenSet.Tables["Personen"].Rows.Count;
lblLeerling.Text = aantalLeerlingen.ToString();
}
}
private void saveAsToolStripMenuItem_Click(object sender, EventArgs e)//opslaan als
{
saveFileDialog1.Filter = "XML-Bestand|*.xml";//bestandstypes filter
saveFileDialog1.Title = "Save the database";//titel van het filedialog scherm
if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
personenSet.WriteXml(saveFileDialog1.FileName);
}
}
private void saveToolStripMenuItem_Click(object sender, EventArgs e)//opslaan
{
personenSet.WriteXml(filename);//schrijf naar bestand
lblStatusStrip.Text = "Saved!";
}
private void openInNotepadToolStripMenuItem_Click(object sender, EventArgs e)
{
Process.Start("Notepad.exe", filename);//open bestand met notepad
}
private void openFD_FileOk(object sender, CancelEventArgs e)//bestand openen (database)
{
openFD.FileName = "XML File|*.xml";
openFD.Title = "Open de database...";
openFD.ShowDialog();
filename = openFD.FileName;
personenSet.ReadXml(openFD.FileName);
}
private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
if (filename == "")
{
personenSet.WriteXml(openFD.FileName);
if (openFD.FileName == "")
{
saveFileDialog1.Filter = "XML File|*.xml";
saveFileDialog1.Title = "Save the database";
saveFileDialog1.ShowDialog();
personenSet.WriteXml(saveFileDialog1.FileName);
}
}
else
{
personenSet.WriteXml(filename);
}
}
private void voegKlasToolStripMenuItem_Click(object sender, EventArgs e)
{
DialogResult dialogres = MessageBox.Show("Nieuwe Klas Aanmaken", "Weet u zeker dat u een nieuw klas wilt aanmaken, zonder op te slaan?", MessageBoxButtons.YesNo);
if (dialogres == DialogResult.Yes)//als er op ja word geklikt
{
personenSet.Clear();
saveFileDialog1.Filter = "XML-Bestand|*.xml";//bestandstypes filter
saveFileDialog1.Title = "Save the database";//titel van het filedialog scherm
saveFileDialog1.ShowDialog();
if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
personenSet.WriteXml(saveFileDialog1.FileName);
}
}
else if (dialogres == DialogResult.No)//als er op nee word geklikt
{
personenSet.WriteXml(filename);
personenSet.Clear();
}
}
private void easyModusToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Hide();
Form2 Form2 = new Form2();
Form2.ShowDialog();
this.Show();
}
/// /////////////////////////////////////////////////////////////////////////////////////
///
private void toolStripLabel1_Click(object sender, EventArgs e)
{
}
private void s2AToolStripMenuItem_Click(object sender, EventArgs e)
{
lblKlas.Text = "4S2A";
}
private void s2BToolStripMenuItem_Click(object sender, EventArgs e)
{
lblKlas.Text = "4S2B";
}
private void s2CToolStripMenuItem_Click(object sender, EventArgs e)
{
lblKlas.Text = "4S2C";
}
private void s2DToolStripMenuItem_Click(object sender, EventArgs e)
{
lblKlas.Text = "4S2D";
}
private void bindingNavigatorCountItem_Click(object sender, EventArgs e)
{
}
private void klassenToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void IetsVeranderd(object sender, EventArgs e)
{
savingnodig = true;
}
private void groupBox1_Enter(object sender, EventArgs e)
{
}
private void tabPage1_Click(object sender, EventArgs e)
{
}
private void cijfersGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void lblLeerling_Click(object sender, EventArgs e)
{
}
private void txtNaam_TextChanged(object sender, EventArgs e)
{
}
private void txtStraat_TextChanged(object sender, EventArgs e)
{
}
private void txtPlaats_TextChanged(object sender, EventArgs e)
{
}
private void gtrToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void saveFileDialog1_FileOk(object sender, CancelEventArgs e)
{
}
private void lijstNav_Refre****ems(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void bindingNavigatorMoveNextItem_Click(object sender, EventArgs e)
{
}
}
}
link naar projectmap : http://www.mediafire.com/?fj9tk9jcm32jdth
Bij voorbaat dank!
Laatst bewerkt: