private void ActualitzarListPreguntas(Nivel nivel) { Exposicion expo = GetSelectedExposicion(); // if (expo.Preguntas != null && expo.Preguntas[nivel] != null) if (expo.Preguntas != null) { if (expo.Preguntas.ContainsKey(nivel)) { List <Pregunta> preguntas = expo.Preguntas[nivel]; if (tabControlIdiomas.SelectedTab != null) { int cnt = 0; foreach (TabPage pageid in tabControlIdiomas.Controls) { ListView listview = (ListView)pageid.Controls[0]; listview.Items.Clear(); listview.Items.AddRange(ListViews.AddItems(preguntas, expo.Idiomas[cnt])); cnt++; } SelectedPreguntaIdioma = null; } } else { if (tabControlIdiomas.Controls.Count > 0) { ListView vista = ((ListView)tabControlIdiomas.Controls[0].Controls[0]); vista.Items.Clear(); } } } }
/// <summary> /// Añade un TabPage dinámicamente con el nombre del idioma en TabControlIdiomas /// </summary> /// <param name="idioma">Idioma a añadir</param> private void AnadirTabPageIdioma(Idioma idioma) { // Creamos un nuevo TabPage con el texto del nombre del idioma TabPage tabPage = new TabPage(idioma.Nombre); // Añadimos el TabPage a TabControlIdiomas tabControlIdiomas.TabPages.Add(tabPage); // TODO: Recolocar creación de elementos ListViewPreguntas = new ListView { Dock = System.Windows.Forms.DockStyle.Fill, FullRowSelect = true, HideSelection = true, UseCompatibleStateImageBehavior = false, View = System.Windows.Forms.View.Details, }; ListViewPreguntas.SelectedIndexChanged += new System.EventHandler(listViewPreguntas_SelectedIndexChanged); tabPage.Controls.Add(ListViewPreguntas); Exposicion exposicion = GetSelectedExposicion(); if (exposicion != null) { // Numero ColumnHeader columnNumero = new ColumnHeader(); columnNumero.Text = "Nº"; // Pregunta ColumnHeader columnPregunta = new ColumnHeader(); columnPregunta.Text = "Pregunta"; columnPregunta.Width = 137; // Respuesta Correcta ColumnHeader columnRespuestaCorrecta = new ColumnHeader(); columnRespuestaCorrecta.Text = "Respuesta Correcta"; columnRespuestaCorrecta.Width = 115; // Respuesta Incorrecta 1 ColumnHeader columnRespuestaIncorrecta1 = new ColumnHeader(); columnRespuestaIncorrecta1.Text = "Respuesta Inc 1"; columnRespuestaIncorrecta1.Width = 123; // Respuesta Incorrecta 2 ColumnHeader columnRespuestaIncorrecta2 = new ColumnHeader(); columnRespuestaIncorrecta2.Text = "Respuesta Inc 2"; columnRespuestaIncorrecta2.Width = 137; // Respuesta Incorrecta 3 ColumnHeader columnRespuestaIncorrecta3 = new ColumnHeader(); columnRespuestaIncorrecta3.Text = "Respuesta Inc 3"; columnRespuestaIncorrecta3.Width = 130; // Añadimos columnas a la ListVIew ListViewPreguntas.Columns.Add(columnNumero); ListViewPreguntas.Columns.Add(columnPregunta); ListViewPreguntas.Columns.Add(columnRespuestaCorrecta); ListViewPreguntas.Columns.Add(columnRespuestaIncorrecta1); ListViewPreguntas.Columns.Add(columnRespuestaIncorrecta2); ListViewPreguntas.Columns.Add(columnRespuestaIncorrecta3); Dictionary <Nivel, List <Pregunta> > preguntasNivel = exposicion.Preguntas; Nivel nivel = GetSelectedNivel(); if (nivel != null && preguntasNivel != null && preguntasNivel.ContainsKey(nivel)) { ListViewPreguntas.Items.AddRange(ListViews.AddItems(preguntasNivel[nivel], idioma)); } } }