protected void VoucherTree_OnCommandColumnButtonInitialize(object Sender, TreeListCommandColumnButtonEventArgs E) { if (E.NodeKey != null) { var node = VoucherTree.FindNodeByKeyValue(E.NodeKey); switch (node.Level) { case 1: E.Visible = E.ButtonType == TreeListCommandColumnButtonType.New ? DefaultBoolean.True : DefaultBoolean.False; break; case 2: switch (E.ButtonType) { case TreeListCommandColumnButtonType.New: case TreeListCommandColumnButtonType.Delete: E.Visible = DefaultBoolean.False; break; case TreeListCommandColumnButtonType.Custom: var dataitem = (Voucher)node.DataItem; var customButtons = VoucherTree.Columns.OfType <TreeListCommandColumn>().First().CustomButtons; var deleteButtonIndex = customButtons.IndexOf(customButtons.FirstOrDefault(b => b.ID == "Delete")); E.Visible = E.CustomButtonIndex == deleteButtonIndex && dataitem.IsExported == true ? DefaultBoolean.False : DefaultBoolean.True; break; default: E.Visible = DefaultBoolean.True; break; } break; default: E.Visible = DefaultBoolean.False; break; } } }
protected void VoucherTree_OnCustomCallback(object Sender, TreeListCustomCallbackEventArgs E) { var arguments = HttpUtility.ParseQueryString(E.Argument); if (arguments["action"] == "delete") { var id = int.Parse(arguments["id"]); if (Voucher.CanDelete(id)) { var repo = new Voucher(); repo.TX(1, string.Format(@" <data> <parent_id>{0}</parent_id> </data>", id)); VoucherTree.DataBind(); } else { throw new Exception("ვაუჩერის წაშლა შეუძლებელია, რადგან გამოყენებულია კამპანიებში."); } } }
protected void VoucherTree_OnNodeInserting(object Sender, ASPxDataInsertingEventArgs E) { VoucherTree.StartEditNewNode(VoucherTree.FocusedNode.Key); }