We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon


Hello , i use columns in a column:


 <e-column [columns]="columns" headerText='Test' textAlign='center'></e-column>


and my Columns is:


public columns: Object[] = [];

this.columns = [             {

                    headerText:'Test', textAlign: 'Center',

                    columns: [{headerText: 'test1', width: 35, textAlign: 'Center', index: 111, visible: false },], },



when clicked, the visible becomes true value.

but I get an error message even though I don't want to use a foreign key.

This happens when I click the button and want to change the content of the column.

I would really appreciate an answer .

best regards

Mohammed Abbasi

The error message is:


ERROR TypeError: col.isForeignColumn is not a function

    at ej2-grids.es2015.js:17203:1

    at Array.filter (<anonymous>)

    at GridComponent.getForeignKeyColumns (ej2-grids.es2015.js:17202:1)

    at Render.isNeedForeignAction (ej2-grids.es2015.js:5772:1)

    at Render.refreshDataManager (ej2-grids.es2015.js:5731:1)

    at GridComponent.<anonymous> (ej2-grids.es2015.js:5657:1)

    at push../node_modules/@syncfusion/ej2-angular-base/src/component-base.js.ComponentBase.trigger (component-base.js:331:1)

    at Render.refresh (ej2-grids.es2015.js:5628:1)

    at Observer.notify (ej2-base.es2015.js:2325:1)

    at GridComponent.notify (ej2-base.es2015.js:6785:1)


1 Reply

NS Nithya Sivaprakasam Syncfusion Team November 2, 2022 08:58 AM

Hi Mohammad,

Greetings from Syncfusion Support.

We tried to replicate your reported issue of script error "col.isForeignColumn is not a function" being thrown even when no foreignkey is used. So, based on your query, we prepared a sample to replicate your problem by changing the visibility to true when clicked and content of the column by the external button. However, the error was not displayed. So, before providing a solution to your query, we need some information that will be very useful for us to validate further on our end.

  1. Please share your complete Grid rendering code.
  2. Please share the version of your syncfusion package.
  3. Do you want to change the visibility with an external button?
  4. Kindly share the issue reproducible sample or replicate your issue in the given sample.

Sample: https://stackblitz.com/edit/angular-qerqnt-kbstmd?file=app.component.html,app.component.ts

The above-mentioned details are very helpful for us to provide a better solution as soon as possible.


Nithya Sivaprakasam.

Live Chat Icon For mobile
Up arrow icon