// create prefix filter
try
{
LayerFilterTree lft = Active.Database.LayerFilters;
LayerFilterCollection lfc = lft.Root.NestedFilters;
string pref = "prefix-";
// check to see if we've created the layerfilter already
if (!lfc.Cast<LayerFilter>().Any(lf => lf.Name.Equals(pref)))
{
// Create it
LayerFilter prefixFilter
= new LayerFilter
(); prefixFilter.Name = pref;
prefixFilter.FilterExpression = $"NAME==\"{pref}*\"";
lfc.Add(prefixFilter);
// set the new filter current (create a new layer filter tree with our filter as current)
LayerFilterTree nlft
= new LayerFilterTree
(lft
.Root,prefixFilter
); // assign the new tree to the Active.Database
Active.Database.LayerFilters = nlft;
}
}
catch (Exception)
{
Debug.Print("Problem creating Prefix LayerFilter");
}