示例#1
0
        private static OrderDetailGridInfo GetOrderGrid(XElement xe)
        {
            OrderDetailGridInfo og = new OrderDetailGridInfo();

            XMLHelper.SetValue(og, xe);
            if (xe.Attribute("OrderDetailEntity") != null)
            {
                string name = xe.Attribute("OrderDetailEntity").Value;
                og.OrderDetailEntityInfo = XMLHelper.RuntimeOrder.RegisterOrderDetailEntity(name);
            }
            XElement xeRowDetail = xe.Element("RowDetailTemplate");

            if (xeRowDetail != null)
            {
                XElement   xpanel = xeRowDetail.Element("DataPanel");
                IDataPanel panel  = GetIDataPanel(xpanel);
                og.RowDetailDataPanel = panel;
            }
            og.GridItems  = GetGridItem(xe);
            og.Parameters = GetParameters(xe);



            return(og);
        }
示例#2
0
        public void TransferItem(ItemType itemType, int itemId, IDataPanel view)
        {
            var transfer = new Transfer();

            transfer.ItemType = itemType;
            transfer.ItemId   = itemId;

            using (var dlg = new TransferEditDlg()) {
                dlg.SetContext(fModel, transfer);

                if (dlg.ShowModal())
                {
                    fModel.AddRecord(transfer);

                    view.UpdateContent();
                }
            }
        }
示例#3
0
        private void SetRowDetailTemplate()
        {
            if (this.orderDetailGridInfo.RowDetailDataPanel != null)
            {
                #region RowDetailTemplate
                DataTemplate dt = DataTemplateHelper.GetEmptyGrid();

                this.ADGrid.RowDetailsTemplate = dt;
                this.ADGrid.LoadingRowDetails += (o, e) =>
                {

                    IDataPanel panel = this.orderDetailGridInfo.RowDetailDataPanel;
                    IControlAction control = panel.GetUIElement();
                    Grid grid = e.DetailsElement as Grid;
                    grid.Background = e.Row.Background;

                    if (grid.Children.Count == 0)
                    {                   
                        Border border = new Border();
                        border.Style = (Style)Application.Current.Resources["DetailShow_1"];

                        grid.Children.Add(border);
                        if (control.GetType() == typeof(DetailGrid))
                        {
                            DetailGrid dgrid = control as DetailGrid;
                            border.Child = dgrid;
               
                            // dgrid.Margin = new Thickness(80, 0, 0, 0);
                            control.InitControl(this.operationType);
                        }
                        else
                        {
                            border.Child = (control as UIElement);
                            OperationTypes cOpType = this.operationType;
                            if (this.operationType == OperationTypes.Audit)
                            {
                                cOpType = OperationTypes.Edit;
                            }
                            control.InitControl(cOpType);
                        }
                    }
                    DependencyObject dObj = VisualTreeHelper.GetChild(e.DetailsElement,0);
                    UIElement curControl = (dObj as Border).Child;
                    if (curControl.GetType() == typeof(DetailGrid))
                    {
                        DetailGrid dgrid = curControl as DetailGrid;
                        string entityType = dgrid.OrderDetailGridInfo.OrderDetailEntityInfo.Entity.Type;
                        FBEntity source = e.Row.DataContext as FBEntity; ;
                        if (source != null)
                        {
                            ObservableCollection<FBEntity> list = source.GetRelationFBEntities(entityType);
                            if (list.Count > 0)
                            {
                                dgrid.ItemsSource = list;
                                
                            }
                            else
                            {
                                
                                dgrid.Visibility = Visibility.Collapsed;
                            }
                        }
                    }

                    if (LoadRowDetailComplete != null)
                    {
                        ActionCompletedEventArgs<UIElement> args = new ActionCompletedEventArgs<UIElement>(curControl);
                        LoadRowDetailComplete(o, args);
                    }
                };
                #endregion
            }
            
        }