private void GeneriereGleichungen_Click(object sender, RoutedEventArgs e) { SaeureEingabeTextBox.TextDocument.GetText(Windows.UI.Text.TextGetOptions.UseObjectText, out string saeureFormel); if (String.IsNullOrEmpty(saeureFormel)) { // Suche nun in der DropDown if (SaeureAuswahlComboBox.SelectedIndex == -1) { return; } saeureFormel = (string)((ComboBoxItem)SaeureAuswahlComboBox.SelectedValue).Tag; } LaugeEingabeTextBox.TextDocument.GetText(Windows.UI.Text.TextGetOptions.UseObjectText, out string laugeFormel); if (String.IsNullOrEmpty(laugeFormel)) { // Suche nun in der DropDown if (LaugeAuswahlComboBox.SelectedIndex == -1) { return; } laugeFormel = (string)((ComboBoxItem)LaugeAuswahlComboBox.SelectedValue).Tag; } saeureLaugeReaktionsResultat.Clear(); Lauge lauge = null; if (laugeFormel.Equals("NH₃")) { lauge = new Ammoniak(); } else { lauge = new Lauge(laugeFormel); } Saeure saeure = new Saeure(saeureFormel); SaeureLaugeReaktion reaktion = new SaeureLaugeReaktion(saeure, lauge); reaktion.BeginneReaktion(); ReaktionsgleichungenControl.ItemsSource = new List <Object>(); ReaktionsgleichungenControl.ItemsSource = reaktion.ReaktionsResultate; }
public void Aluminiumhydroxid() { // Überprüfe, ob aus den Bestandteilen die chemische Formel generiert werden kann Metall aluminium = Periodensystem.Instance.FindeMetallNachAtomsymbol("Al"); // Kreiere die Lauge Lauge aluminiumhydroxid = new Lauge(aluminium); // Überprüfe ob identisch Assert.AreEqual("Al(OH)₃", aluminiumhydroxid.GeneriereChemischeFormelAusBestandteilen()); aluminiumhydroxid = new Lauge("Al(OH)₃"); aluminiumhydroxid.Bestandteile = aluminiumhydroxid.GeneriereBestandteileAusChemischerFormel(); // Erhalte die Moleküle aus den Bestandteilen Molekuel aluminiumMolekuel = aluminiumhydroxid.ErhalteMolekuel(aluminium); Molekuel hydroxidMolekuel = aluminiumhydroxid.ErhalteMolekuel(new Oxid("OH")); Assert.AreEqual(1, aluminiumMolekuel.AnzahlAtomeInMolekuel()); Assert.AreEqual("Al", aluminiumMolekuel.Atombindung.ErhalteElement().Symol); Assert.AreEqual(3, hydroxidMolekuel.Anzahl); Assert.AreEqual("OH", hydroxidMolekuel.Atombindung.ChemischeFormel); }
public SaeureLaugeReaktion(Saeure saeure, Lauge lauge) { ReagierendeSaeure = saeure; ReagierendeLauge = lauge; ReaktionsResultate = new List <SaeureLaugeReaktionsResultat>(); }