private void btnFilter_Click(object sender, EventArgs e)
{
var cls = cmbClass.SelectedItem as ClassDefinition;
if (cls != null)
{
var aliasedClasses = new Dictionary<string, ClassDefinition>();
aliasedClasses.Add(txtJoinClassAlias.Text, cls);
bool found = false;
foreach (FeatureSchema fs in (FeatureSchemaCollection)cmbSchema.DataSource)
{
if (fs.Name == _primarySchemaName)
{
foreach (ClassDefinition cd in fs.Classes)
{
if (cd.Name == _primaryClassName)
{
aliasedClasses.Add(_primaryClassAlias, cd);
found = true;
break;
}
}
}
if (found)
break;
}
string expr = ExpressionEditor.EditExpression(_conn, cls, aliasedClasses, txtJoinFilter.Text, ExpressionMode.Filter);
if (expr != null)
txtJoinFilter.Text = expr;
}
}