protected void RadGrid_Options_RowDrop(object sender, GridDragDropEventArgs e) { if (e.DestDataItem != null && string.IsNullOrEmpty(e.HtmlElement) && e.DestDataItem.OwnerGridID == RadGrid_Options.ClientID) { ProductVariantMgr myProductVariantMgr = new ProductVariantMgr(); Property_Option myProperty_Option = myProductVariantMgr.Get_Product_Variant_Property_Option(e.DestDataItem.GetDataKeyValue("OptionID").ToString()); List <Property_Option> myProperty_Options = myProductVariantMgr.Get_Product_Variant_Property_Options(myProperty_Option.Variant_PropertyID, "SortOrder"); Property_Option draggedProperty_Option = Get_Property_Option_in_List(myProperty_Options, e.DraggedItems[0].GetDataKeyValue("OptionID").ToString()); Property_Option destProperty_Option = Get_Property_Option_in_List(myProperty_Options, e.DestDataItem.GetDataKeyValue("OptionID").ToString()); int destIndex = myProperty_Options.IndexOf(destProperty_Option); if (e.DropPosition == GridItemDropPosition.Above && e.DestDataItem.ItemIndex > e.DraggedItems[0].ItemIndex) { destIndex -= 1; } if (e.DropPosition == GridItemDropPosition.Below && e.DestDataItem.ItemIndex < e.DraggedItems[0].ItemIndex) { destIndex += 1; } myProperty_Options.Remove(draggedProperty_Option); myProperty_Options.Insert(destIndex, draggedProperty_Option); foreach (Property_Option Property_Option in myProperty_Options) { // Product Variant e2Data[] UpdateData = { new e2Data("OptionID", Property_Option.OptionID), new e2Data("SortOrder", (myProperty_Options.IndexOf(Get_Property_Option_in_List(myProperty_Options, Property_Option.OptionID)) + 1).ToString()) }; myProductVariantMgr.Edit_Product_Variant_Property_Option(UpdateData); } RadGrid_Options.Rebind(); } }
protected void lbtn_EditOption_Command(object sender, CommandEventArgs e) { if (!DataEval.IsEmptyQuery(e.CommandArgument.ToString())) { ProductVariantMgr myProductVariantMgr = new ProductVariantMgr(); // Load options Property_Option myProperty_Option = myProductVariantMgr.Get_Product_Variant_Property_Option(e.CommandArgument.ToString()); // Need to add code for enable edit value later Control_FillData_Option(); tbx_EditOption_Name.Text = myProperty_Option.Option_Name; tbx_EditOption_Value.Text = myProperty_Option.Option_Value; chkbox_EditOption_IsActive.Checked = myProperty_Option.IsActive; btn_EditOption.CommandArgument = myProperty_Option.OptionID; MultiView_InputOption.SetActiveView(View_Edit); } }