data grid displays 50 columns and need to freeze the first 3 columns as the user scrolls horizontally when checking the other columns in data grid
Discussion posts and replies are publicly visible
There currently isn't any direct way to do this, other than perhaps showing separate grids in a column layout (if possible) where the left-hand column is minimized in size and then the right-hand one is free to scroll. However I think a best practice recommendation might be to consider alternatives to showing a grid with 50 columns - such as showing only the most important columns by default, and allowing an "expanded view" for specific rows either when selected or when an inline link is clicked, etc.
Yeah is it really necessary for them to see all 50 columns at the same time? I honestly can't think of too many reasons why I would need all those columns at once.
Instead, you could do something like provide a multiple dropdown menu where they could select which columns are useful. Then, you can hide all other columns. Also, you can follow a master detail approach where you can show a few columns in the grid (maybe just the three you mentioned above) and provide a link. Then, when the user clicks the link, you can display all the other data about the row below or next to your grid.
In general, I try to follow the rule of never having horizontal scrolling. Think about other ways to display the data that would limit that possibility.