private void FillDGAntwErstellen(int FrageID) { // vorhandene Antwortmöglichkeiten zu der Frage mit der Id FrageID aus der DB ziehen SqlParameter pR_FrageID = DataAccessAwmoeglichkeiten.Paramr_FrageID; pR_FrageID.Value = FrageID; DataParameters parameters = new DataParameters(); parameters.Add(pR_FrageID); DataAccessAwmoeglichkeiten daAwMoegl = new DataAccessAwmoeglichkeiten(); DSAwmoeglichkeiten dsAwMoegl = daAwMoegl.Select(parameters); if (dsAwMoegl.awmoeglichkeiten.Count > 0) { // Entsprechende Anzahl von Editfeldern im DataGrid anlegen (+ 4 neue) PrepareDGAntwErstellen(dsAwMoegl.awmoeglichkeiten.Count + 4); // Daten in die Editfelder eintragen for (int i = 0; i < dsAwMoegl.awmoeglichkeiten.Count; i++) { TextBox txtbx = (TextBox)DataGridAccess.GetControlFromDataGrid(m_dgAntwErstellen.Items[i], typeof(TextBox), 1, 0); if (txtbx != null) { // Antworttext in das Editfeld dieser Zeile eintragen txtbx.Text = dsAwMoegl.awmoeglichkeiten[i].Text; // AntwortMögl.-ID in die gleiche Zeile eintragen m_dgAntwErstellen.Items[i].Cells[0].Text = dsAwMoegl.awmoeglichkeiten[i].AwmID.ToString(); } } } else { PrepareDGAntwErstellen(6); } }
private void m_btnLoeschen_Click(object sender, System.EventArgs e) { ArrayList idCache = new ArrayList(); // IDs aller selektierten Fragen ermitteln for (int i = 0; i < m_dgFragen.Items.Count; i++) { CheckBox cbx = (CheckBox)DataGridAccess.GetControlFromDataGrid(m_dgFragen.Items[i], typeof(CheckBox), 1, 0); if (cbx != null && cbx.Checked) { // ID der selektierten Frage zwischenspeichern idCache.Add(Convert.ToInt32(m_dgFragen.Items[i].Cells[0].Text)); } } // Für jede ID den entsprechenden Datensatz aus der DB ziehen und löschen DataAccessFragen daFragen = new DataAccessFragen(); foreach (int id in idCache) { // alle Datensätze aus dem DataSet löschen daFragen.DeleteFrage(id); // Falls die in Bearbeitung befindliche Frage gelöscht wird // die Fragebearbeitungsanzeige zurücksetzen if (id == FrageID) { NeueFrage(); } } RefreshDGFragen(); }
private void m_lnkbMehrAntw_Click(object sender, System.EventArgs e) { ArrayList tempData = new ArrayList(); // den Inhalt aller Textboxen die nicht leer sind zwischenspeichern for (int i = 0; i < m_dgAntwErstellen.Items.Count; i++) { TextBox txtbx = (TextBox)DataGridAccess.GetControlFromDataGrid(m_dgAntwErstellen.Items[i], typeof(TextBox), 1, 0); if (txtbx != null) { if (txtbx.Text.Trim() != "") { // ein Pair von Text und ID zwischenspeichern tempData.Add(new Pair(txtbx.Text, m_dgAntwErstellen.Items[i].Cells[0].Text)); } } } // mehr Eingabefelder erzeugen PrepareDGAntwErstellen(m_dgAntwErstellen.Items.Count + 4); // Daten in die Textboxen zurückschreiben for (int i = 0; i < tempData.Count; i++) { TextBox txtbx = (TextBox)DataGridAccess.GetControlFromDataGrid(m_dgAntwErstellen.Items[i], typeof(TextBox), 1, 0); if (txtbx != null) { txtbx.Text = (string)((Pair)tempData[i]).First; m_dgAntwErstellen.Items[i].Cells[0].Text = (string)((Pair)tempData[i]).Second; } } }
private void RefreshDGBenutzer() { // alle Benutzerdatensätze aus der DB ziehen und im Datagrid darstellen DSBenutzer dsAllUsers = new DataAccessBenutzer().Select(); m_dgBenutzer.DataSource = dsAllUsers.benutzer; m_dgBenutzer.DataBind(); // Benutzerrechte in den DropdownListen darstellen // Inhalt der Dropdownlisten vorbereiten ArrayList choice = new ArrayList(); choice.Add("Benutzer"); choice.Add("Admin"); for (int i = 0; i < dsAllUsers.benutzer.Count; i++) { DropDownList ddl = (DropDownList)DataGridAccess.GetControlFromDataGrid(m_dgBenutzer.Items[i], typeof(DropDownList), 3, 0); if (ddl != null) { ddl.DataSource = choice; ddl.DataBind(); ddl.SelectedIndex = dsAllUsers.benutzer[i].GruppenID; ddl.SelectedIndexChanged += new EventHandler(ddlUserRights_SelectedIndexChanged); ddl.AutoPostBack = true; } } }
private void ShowFragen() { UmfrageInfo umfr = SessionContainer.ReadFromSession(this).Umfrage; // alle Fragen zu der Umfrage aus der DB ziehen SqlParameter pAllFragen = DataAccessFragen.Paramr_UmfrageID; pAllFragen.Value = umfr.UmfrageID; DataParameters parameters = new DataParameters(); parameters.Add(pAllFragen); DSFragen dsAllFragen = new DataAccessFragen().Select(parameters); // DataGrid vorbereiten m_dgFragedarstellung.DataSource = dsAllFragen.fragen; m_dgFragedarstellung.DataBind(); // Fragen in Datagrid eintragen for (int i = 0; i < m_dgFragedarstellung.Items.Count; i++) { // Titel setzen Label lb = (Label)DataGridAccess.GetControlFromDataGrid(m_dgFragedarstellung.Items[i], typeof(Label), 1, 0); if (lb != null) { lb.Text = dsAllFragen.fragen[i].Text; } // Antwortmöglickeiten darstellen PutAntworten(m_dgFragedarstellung.Items[i], dsAllFragen.fragen[i].FrageID, dsAllFragen.fragen[i].Frageart); } }
private void SaveAntworten() { TextBox txt = null; DataAccessAwmoeglichkeiten daAntw = new DataAccessAwmoeglichkeiten(); DSAwmoeglichkeiten dsAntw = new DSAwmoeglichkeiten(); for (int i = 0; i < m_dgAntwErstellen.Items.Count; i++) { dsAntw.Clear(); int id = Convert.ToInt32(m_dgAntwErstellen.Items[i].Cells[0].Text); txt = (TextBox)DataGridAccess.GetControlFromDataGrid(m_dgAntwErstellen.Items[i], typeof(TextBox), 1, 0); if (txt == null) { continue; } if (txt.Text.Trim() == "") { // wenn ein leeres Textfeld eine gültige ID hat, wird der Datensatz gelöscht if (id != DBConstants.NotValid) { daAntw.DeleteAntwortmoegl(id); } continue; } else { dsAntw = daAntw.GetAntwortmoeglByID(id); if (dsAntw.awmoeglichkeiten.Count == 0) { // neuen Datensatz anlegen dsAntw.awmoeglichkeiten.AddawmoeglichkeitenRow(FrageID, txt.Text.Trim()); } else if (dsAntw.awmoeglichkeiten.Count == 1) { // Datensatz aktualisieren dsAntw.awmoeglichkeiten[0].Text = txt.Text.Trim(); } } daAntw.CommitChanges(dsAntw); // ID des Datensatzes in Datagrid eintragen m_dgAntwErstellen.Items[i].Cells[0].Text = dsAntw.awmoeglichkeiten[0].AwmID.ToString(); } // Datagrid aktualisieren FillDGAntwErstellen(FrageID); }
private void m_btnBearbeiten_Click(object sender, System.EventArgs e) { // suche die erste selektierte Frage for (int i = 0; i < m_dgFragen.Items.Count; i++) { CheckBox cbx = (CheckBox)DataGridAccess.GetControlFromDataGrid(m_dgFragen.Items[i], typeof(CheckBox), 1, 0); if (cbx != null && cbx.Checked) { // selektierten Frage anhand ihrer ID zum Bearbeiten laden LoadFrage(Convert.ToInt32(m_dgFragen.Items[i].Cells[0].Text)); // die erste selektierte Frage wurde gefunden, die weiteren werden nicht behandelt break; } } }
private void PutAntworten(DataGridItem item, int frageID, int frageart) { // Antwortmöglichkeiten aus der DB ziehen SqlParameter pFrageID = DataAccessAwmoeglichkeiten.Paramr_FrageID; pFrageID.Value = frageID; DataParameters parameters = new DataParameters(); parameters.Add(pFrageID); DSAwmoeglichkeiten dsAntw = new DataAccessAwmoeglichkeiten().Select(parameters); switch (frageart) { case DBConstants.TextFrage: TextBox txt = (TextBox)DataGridAccess.GetControlFromDataGrid(item, typeof(TextBox), 1, 0); if (txt != null) { txt.Visible = true; } break; case DBConstants.UndFrage: CheckBoxList chbl = (CheckBoxList)DataGridAccess.GetControlFromDataGrid(item, typeof(CheckBoxList), 1, 0); if (chbl != null) { chbl.Visible = true; chbl.DataTextField = dsAntw.awmoeglichkeiten.Columns["Text"].ToString(); chbl.DataSource = dsAntw.awmoeglichkeiten; chbl.DataBind(); } break; case DBConstants.OderFrage: DropDownList ddl = (DropDownList)DataGridAccess.GetControlFromDataGrid(item, typeof(DropDownList), 1, 0); if (ddl != null) { ddl.Visible = true; ddl.DataSource = dsAntw.awmoeglichkeiten; ddl.DataTextField = dsAntw.awmoeglichkeiten.Columns["Text"].ToString(); ddl.DataBind(); } break; } }
private void m_btnUmfrageLoeschen_Click(object sender, System.EventArgs e) { // für alle selektierten Zeilen den entsprechenden Datensatz löschen DataAccessUmfragen daUmfr = new DataAccessUmfragen(); // IDs aller selektierten Umfragen ermitteln for (int i = 0; i < m_dgUmfragen.Items.Count; i++) { CheckBox cbx = (CheckBox)DataGridAccess.GetControlFromDataGrid(m_dgUmfragen.Items[i], typeof(CheckBox), 1, 0); if (cbx != null && cbx.Checked) { // Datensatz löschen int id = Convert.ToInt32(m_dgUmfragen.Items[i].Cells[0].Text); daUmfr.DeleteUmfrage(id); } } RefreshDGUmfragen(); }