public static VisualElement[,] CreateGridButton(this VisualElement parent, int width, int heigth, VisualTreeAsset buttonTemplate, Action <int, int> onClicked = null) { return(parent.CreateGrid(width, heigth, (x, y) => { //var template = buttonTemplate.CloneTree(); var t = new VisualElement(); var template = buttonTemplate.CloneTree(); var button = template.Query <Button>().First(); button.clickable.clicked += () => onClicked?.Invoke(x, y); return template; })); }