public override FrameworkElement CreateCellElement(GridViewCell cell, object dataItem) { I_ControlHelper MyControlHelper = null; if (HasRangeOfValues) { MyControlHelper = ControlHelper.KeyValueControlHelper(Column); } else { MyControlHelper = ControlHelper.GetControlHelper(Column, ColumnSetting, null); } MyControlHelper.SetReadonly(IsReadOnly); if (MyControlHelper is I_ControlHelperValueRange) { if (ColumnValueRange != null) { (MyControlHelper as I_ControlHelperValueRange).SetColumnValueRange(ColumnValueRange); } } cell.Tag = MyControlHelper; if (ButtonMenus.Any()) { foreach (var item in ButtonMenus) { var newMenu = new ConrolPackageMenu(); newMenu.Name = item.Name; newMenu.Title = item.Title; newMenu.MenuClicked += (sender, e) => Item_MenuClicked(sender, e, item, dataItem); MyControlHelper.AddButtonMenu(newMenu); } } return(MyControlHelper.WholeControl); }
internal void AddButtonMenu(ConrolPackageMenu menu) { ButtonMenus.Add(menu); }
internal void RemoveButtonMenu(string name) { ButtonMenus.Remove(ButtonMenus.FirstOrDefault(x => x.Name == "name")); }