Excluir dados usando 2 DialogForm
oi eu tenho pergunta para remover dados da caixa de diálogo 2 formulários
na primeira caixa de diálogo contém lista de dados, e na segunda caixa de diálogo contém detalhes dos dados e botão excluir ... eu já excluo os dados com sucesso no banco de dados, mas confundo como remover os dados da lista ...
se apenas selecionar dados e excluir, eu sei que isso pode ser feito com este código
quizzes.RemoveAt(listBoxQuizzes.SelectedIndex);
mas o problema aqui no botão dialogform1 não está disponível para excluir, basta exibir os dados detalhados. portanto, se o usuário deseja excluir dados, ele deve abrir dialogform2 (dados detalhados) eu já excluí os dados no banco de dados com este código
Global.deleteData("DELETE FROM Quiz_Occurrences WHERE ID = " + id);
e feche detaildataform (dialogform2) por
this.Close();
e mova para dialogform1 (listdatabox) o problema aqui, dados que apenas apago ainda lá porque ainda não foram removidos(já excluir do banco de dados, mas não remover da lista). e precisa reiniciar o programa para ver o efeito de excluir dados
Progresso da atualização
mudei os dados para var global, por isso é tecnicamente possível remover dados no dialogform2
este é o código (caixa de listagem do modificador em dialogform1)
int no = 1;
foreach (CQuizOccurrence myQuizOccurrence in Global.quizOccurrences) {
}
se eu quiser excluí-lo do dialogform1, posso usar
Global.quizOccurrences.removeAT(listBoxQuizzes.SelectedIndex);
mas se eu quiser excluí-lo do dialogform2
Global.quizOccurrences.removeAT(.........); //still not have idea how can i reference index
Atualizar solução de @nitin
então primeiro eu escrevo em formdialog2
public Frmdialog1 frm_dialog { get; set; }
então eu escrevo isso em formdialog1
frmdialog2.frm_dialog=this;
volte novamente para formdialog1 para escrever
frm_dialog.quizzes.RemoveAt(frm_dialog.listBoxQuizzes.SelectedIndex);
é isso mesmo porque eu recebo muitos erros