private void Edit_Function(object sender, RoutedEventArgs e) { DlgAddFunction dlg = new DlgAddFunction(); EvaluatedFunction evaluatedFunction = FunctionGrid.SelectedItem as EvaluatedFunction; int indexOfFunction = evaluatedFunctionsList.IndexOf(evaluatedFunction); dlg.functionExpression.Text = evaluatedFunction.Function; dlg.xFirst.Value = evaluatedFunction.xDomain.X; dlg.xLast.Value = evaluatedFunction.xDomain.Y; dlg.yFirst.Value = evaluatedFunction.yDomain.X; dlg.yLast.Value = evaluatedFunction.yDomain.Y; if (dlg.ShowDialog() == true) { evaluatedFunction.setxDomain((double)dlg.xFirst.Value, (double)dlg.xLast.Value); evaluatedFunction.setyDomain((double)dlg.yFirst.Value, (double)dlg.yLast.Value); evaluatedFunctionsList[indexOfFunction] = evaluatedFunction; FunctionGrid.Items.Refresh(); } }