But, whenever I switch current symbol to another then those margin will revert back to default blank bar margin in preferences. I also don't want to use End button to get desired blank bar margin because it's not productive when switching symbol one by one. What I want is consistent blank bar margin on specific chart only. Is that possible using AFL?
This is obsolete functionality. It was introduced before multithreading. With multithreading enabled each pane is running separate thread and such dependencies between threads are unwelcome. It is advised NOT to use it anymore.
If you really have to use it, you need to use only one pane. Otherwise as you can see on the screenshot, one pane (the one where you call SetChartOptions( 0, 0, chartGridMiddle, 0, 0, 50 );) works fine, but the other pane (where you don't call it) is not synced unless you touch scroll bar. Again this is because of the fact that chart panes are now totally asynchronous for maximum multithreading performance.
Also notes that extra bars ARE there, but scroll bar is not in the right-most position.