private void Expression_TextChanged(object sender, TextChangedEventArgs e) { _expression.Pattern = Expression.Text; bool parsed = _expression.Parse(); ErrorInfos.Visibility = System.Windows.Visibility.Collapsed; ErrorInfos.Text = _expression.ParserError; if (!parsed) { ErrorInfos.Visibility = System.Windows.Visibility.Visible; return; } try { bool linked = _expression.Link(); if (!linked) { StringBuilder builder = new StringBuilder(); foreach (LinkErrorInfo info in _expression.Errors) { builder.Append(info.ToString()).Append(';'); } ErrorInfos.Text = builder.ToString(); ErrorInfos.Visibility = System.Windows.Visibility.Visible; } } catch (Exception ex) { ErrorInfos.Visibility = System.Windows.Visibility.Visible; ErrorInfos.Text = ex.Message; } }