ApplyUserColumnPreference(user, "productGrid");
<script>
var userID = '@ViewBag.UserID';
var mainGridID = '@ViewBag.MainGridID';
var isCanEditAllUserColumnPreference = @Convert.ToBoolean(ViewBag.IsCanEditAllUserColumnPreference).ToString().ToLower();
var selfUserColumnPreference = '@ViewBag.SelfUserColumnPreference' == '' ? [] : JSON.parse('@Html.Raw(ViewBag.SelfUserColumnPreference)');
var allUserColumnPreference = '@ViewBag.AllUserColumnPreference' == '' ? [] : JSON.parse('@Html.Raw(ViewBag.AllUserColumnPreference)');
</script>
<div class="wrapActionButton">
<!--Add this inside wrapActionButton -->
@Html.Partial("_MenuUserColumnPreference")
<div class="btn-group"></div>
</div>
<!--Optional change grid to-->
<div id="@ViewBag.MainGridID"></div>
function bindGrid() {
/* Other scripts */
//optional change grid to $(`#${mainGridID}`)
//on column declaration make sure isColumnPreferenceHidden("FieldName")
[
{ field: "Name", title: gridTitleName, hidden: isColumnPreferenceHidden("Name") },
{ field: "Code", title: gridTitleCode, hidden: isColumnPreferenceHidden("Code") }
]
//add this on end of this grid
renderMenuColumnPreferenceList();
}