private void dataGridView2_CellValueChanged(object sender, DataGridViewCellEventArgs e) { try { label12.Text = "Статус грамматик"; var rowIndex = e.RowIndex; var value = dataGridView2[0, rowIndex].Value.ToString(); if (rowIndex == ChainBNF.Count) { ChainBNF.Add(new Chain() { Str = value }); BildDataGridBNF(); return; } if (string.IsNullOrEmpty(value)) { ChainBNF.RemoveAt(rowIndex); BildDataGridBNF(); return; } ChainBNF[rowIndex].Str = dataGridView2[0, rowIndex].Value.ToString(); } catch (Exception ex) { //textBox1.Text += Environment.NewLine + ex.Message; } }
private void button3_Click(object sender, EventArgs e) { try { foreach (var ch in ChainKS) { if (!ChainBNF.Any(x => x.Str.Equals(ch.Str))) { textBox1.Text += Environment.NewLine + "БНФ не содержит цепочку " + ch.Str; label12.Text = "Не идентичны"; return; } } foreach (var ch in ChainBNF) { if (!ChainKS.Any(x => x.Str.Equals(ch.Str))) { textBox1.Text += Environment.NewLine + "КС не содержит цепочку " + ch.Str; label12.Text = "Не идентичны"; return; } } textBox1.Text += Environment.NewLine + "Цепочки грамматик идентичны"; label12.Text = "Идентичны"; } catch (Exception ex) { textBox1.Text += Environment.NewLine + ex.Message; } }