Thanks for reply, this solution works, but unstable for my case.
Here my grid with buttons 82200609b2.png
It is in card layout, and somtimes after hide/show events it is shows like this: d921168a60.png
After resize panel buttons apears. Need to insert doLayout() somewhere?

Sometimes it looks like this: ff3002cb74.png and resize don't help.
On Ext 4.0.7 everything worked fine, after I wrote small override in Ext.layout.component.AbstractDock afterRemove method

Is there anyway to suppress the component from redrawing when the store is updated?

Originally Posted by skirtle

It's not easy to do that at present but I agree this would be a good feature to add. If you could let me know your use case I'll try to include it in the next version.

I think I'd do this by changing renderComponent in CTemplate. Currently it just calls the component's render method but that won't work if the component is already rendered. If that method also supported moving an existing component it should be possible to keep the same component when the grid refreshes rather than creating a new one. Without knowing your use case I don't know whether this would meet you needs.

You might be able to fake it for now by suspending events on the store but that may have other consequences.

Is the slowness of the grid refresh due to the issue of the component in the grid being redrawning? I haven't notice this issue with Chrome or Firefox using about 200 records. But in IE9, its horrible. It takes about 15-20secs for the grid to reflect the store filter. Is this just a limitation with IE itself, or is there a way to improve the performance in IE?

I would like the "Thomas Edit(button)" example CTemplate, but in a column grid. I am trying but something is wrong with my code because doesn´t work. ¿What I have to put into Ext.Fly funtion?
Any help?

I would like the "Thomas Edit(button)" example CTemplate, but in a column grid. I am trying but something is wrong with my code because doesn´t work. ¿What I have to put into Ext.Fly funtion?

CTemplate and Component Column are separate extensions and it's important not to confuse the two. While a Component Column does use CTemplate to achieve the desired effect it is largely an implementation detail. You should just need to return your components from the column's renderer, there's no need to start manipulating the underlying CTemplate directly.

Ext.fly returns an element and you aren't working with elements directly in the case of a column. Take a look at the Component Column examples instead.

To achieve the label and button effect in a column you'd need to return a wrapper container from the renderer that contains both components with a suitable layout. There are other ways to do it but that's the safest with respect to resizing and destruction management. Theoretically you can manipulate the CTemplate and return all sorts of exciting things from the renderer but that's really just making things difficult for little benefit.

Problem with keyboard input

Problem with keyboard input

If you have an editable field component inside the component column, you cannot use the arrow keys or space bar while editing the field value as those are swallowed by the grid itself for keyboard navigation of the grid. Your first example on http://skirtlesden.com/ux/component-column demonstrates this pretty clearly. Is there any way to get around this issue?

If you have an editable field component inside the component column, you cannot use the arrow keys or space bar while editing the field value as those are swallowed by the grid itself for keyboard navigation of the grid. Your first example on http://skirtlesden.com/ux/component-column demonstrates this pretty clearly. Is there any way to get around this issue?