SqlQuery on TableControlContent applies to MapMember

02-11-2019 10:36 AM
New Contributor II

The TableControl and related classes are a great addition to the SDK! 

However, I'm seeing behaviour whereby the SqlQuery applied to a TableControlContent object ends up getting applied to the MapMember (whether it be a StandaloneTable or a Feature Class). 

Is this expected behaviour? I would expect the TableControl to display a custom filter without affecting the built-in attribute table's records. It is as though a DefinitionQuery is getting set somewhere behind the scenes.

After this, it seems the filter is cached on the MapMember, and subsequent queries in the Addin continually return the same results. Even after closing the the "Road Names Pane", which is a MapImpersonation pane, upon opening a new Pane, the same results are returned despite a change in the SqlQuery.

Is this a bug?

If so, is there a workaround you can suggest to get around this? I am in the process of refactoring an Addin to replace a custom WPF table with the TableControl and would prefer not to back-out these changes.



MapMember attribute table has 1000

After appling SqlQuery to TableControlContent, attribute table contains same result.

1 Reply
Esri Contributor

Hi Charlie, 

What you are seeing is definitely a bug.  The table control and the attribute pane of the same layer should work independently with regards to a SqlQuery defined on the TableControlContent.   Thanks for pointing this out.  We have added this as an issue and are working on a fix. 

Unfortunately there is no workaround at this time, but we'll try to include the fix for this into 2.3.1