示例#1
0
 public void ApplyColumnFormat(GridViewColumn gvCol, OlapColumnInfo fInfo)
 {
     var col = gvCol as GridViewDataColumn;
     if (col == null) return;
     col.HeaderStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
     col.Caption = fInfo.Caption;
     col.PropertiesEdit.DisplayFormatString = fInfo.Format.FormatString;
     switch (fInfo.Format.FormatType)
     {
         case FormatType.DateTime:
             col.CellStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
             break;
         case FormatType.Numeric:
             col.CellStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Right;
             break;
         default:
             col.CellStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Left;
             break;
     }
     if (fInfo.Caption.ToLower().Equals("year") ||
         fInfo.Caption.ToLower().Equals("month") ||
         fInfo.Caption.ToLower().Equals("date"))
     {
         col.Width = 50;
         col.CellStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
         return;
     }
     col.Width = fInfo.ColWidth;
 }
 protected internal virtual TableCell CreateHeaderCell(int layoutLevel, GridViewColumn column, GridViewHeaderLocation location, bool removeLeftBorder, bool removeRightBorder)
 {
     if (layoutLevel == 0)
     {
         if (column is SmartGridViewCommandColumn)
             return new ASPxSmartGridViewCommandColumnHeaderCell(this, column as SmartGridViewCommandColumn, location, removeLeftBorder, removeRightBorder);
     }
     
     return new ASPxSmartGridViewTableHeaderCell(this, column, location, removeLeftBorder, removeRightBorder);
 }
 /// <summary>
 /// manejo de errores en pantalla
 /// </summary>
 /// <param name="errors"></param>
 /// <param name="column"></param>
 /// <param name="errorText"></param>
 void AddError(Dictionary<GridViewColumn, String> errors, GridViewColumn column, String errorText)
 {
     if (errors.ContainsKey(column))
     {
         return;
     }
     else
     {
         errors[column] = errorText;
     } 
 }
 protected override TableCell CreateContentCell(GridViewTableDataRow row, GridViewColumn column, int index, int visibleRowIndex)
 {
     if (column is GridViewDataColumn)
         return new GridViewTableDataCell(this, row, column as GridViewDataColumn, visibleRowIndex, ShouldRemoveLeftBorder(index), ShouldRemoveRightBorder(index));
     
     if (column is GridViewCommandColumn)
         return new ASPxSmartGridViewTableCommandCell(this, column as GridViewCommandColumn, visibleRowIndex, ShouldRemoveLeftBorder(index), ShouldRemoveRightBorder(index));
     
     if (column is GridViewBandColumn)
         return new GridViewTableEmptyBandCell(this, column, visibleRowIndex, ShouldRemoveLeftBorder(index), ShouldRemoveRightBorder(index));
     
     return RenderUtils.CreateTableCell();
 }
 public FastGridViewCheckBoxHeaderCell(GridViewColumn column, GridRowElement row)
     : base(column, row)
 {
 }
		public CollectionPropertyColumnFilterDescriptor(GridViewColumn column) : base(column)
		{
		}
示例#7
0
        private void openToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            ofd.InitialDirectory = "c:\\";
            ofd.Filter           = "project files (*.csproj)|*.csproj|All files (*.*)|*.*";
            ofd.FilterIndex      = 1;
            ofd.RestoreDirectory = true;

            if (ofd.ShowDialog() == true)
            {
                try
                {
                    #region CheckBox list creator

                    ProgectSettings = new ProjectSettings();

                    XmlDocument doc = new XmlDocument();
                    docName = ofd.FileName.ToString();
                    doc.Load(docName);
                    XmlDocument docExport      = new XmlDocument();
                    string      exportFilePath = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(docName), "ExportSetting.xml");
                    ProgectSettings.ExportFileName = exportFilePath;

                    XmlNode root = doc.DocumentElement;

                    XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
                    nsmgr.AddNamespace("ns", root.NamespaceURI);

                    Assembly assembly = typeof(IPageInstance).Module.Assembly;
                    ProgectSettings.IsRefJCMSAdded = AssemblyRefCreator.IsAssemblyRefAdded(assembly, docName);
                    ProgectSettings.AddBasePageToCollection("test");
                    ProgectSettings.AddBasePageToCollection("test2");


                    XmlNode nameSpace = root.SelectSingleNode("//ns:RootNamespace", nsmgr);
                    jazNamespace = nameSpace.InnerText;
                    ProgectSettings.RootNameSpace = jazNamespace;

                    XmlNodeList    nodeList       = root.SelectNodes("//ns:Compile", nsmgr);
                    List <XmlNode> nodeCollection = new List <XmlNode>();
                    foreach (XmlNode node in nodeList)
                    {
                        if (node.Attributes.GetNamedItem("Include").Value.Contains(OldFileExtension))
                        {
                            nodeCollection.Add(node);
                        }
                    }

                    List <DataRowComponents> dataRowCollection = new List <DataRowComponents>();

                    foreach (XmlNode selectedNodes in nodeCollection)
                    {
                        DataRowComponents dataRow = new DataRowComponents();
                        dataRow.IsSelected = false;

                        string location = selectedNodes.Attributes.GetNamedItem("Include").Value;

                        dataRow.Text = location;
                        string      xPath        = "//ns:Compile[@Include='" + location.Replace(OldFileExtension, NewFileExtension) + "']";
                        XmlNodeList jazNodesList = root.SelectNodes(xPath, nsmgr);
                        jazClassName = System.IO.Path.GetFileName(location).Replace(OldFileExtension, "");
                        string directory        = System.IO.Path.GetDirectoryName(location).Replace("\\", ".");
                        string jazNamespaceNode = jazNamespace;
                        if (!string.IsNullOrEmpty(directory))
                        {
                            jazNamespaceNode = jazNamespace + "." + directory;
                        }

                        dataRow.Namespace = jazNamespaceNode;
                        dataRow.ClassName = jazClassName;

                        string           exFilePath    = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(docName), "ExportSetting.xml");
                        PageSettings     pageSet       = new PageSettings(exFilePath, location);
                        XmlStoreProvider storeProvider = new XmlStoreProvider(exFilePath);
                        ProgectSettings.SelectedPage = pageSet;
                        storeProvider.LoadSettings(ProgectSettings);

                        if (ProgectSettings.IsSetted)
                        {
                            dataRow.Namespace = ProgectSettings.SelectedPage.NameSpace;
                            dataRow.ClassName = ProgectSettings.SelectedPage.ClassName;
                        }

                        if (jazNodesList.Count > 0)
                        {
                            dataRow.IsSelected = true;
                        }

                        dataRow.Tag      = selectedNodes;
                        dataRow.BasePage = "test2";
                        dataRowCollection.Add(dataRow);
                    }

                    DataSet   dataSet           = new DataSet("JazCmsDataSet");
                    DataTable dataTable         = new DataTable("DataRowComponentsCollection");
                    DataTable basePageListTable = new DataTable("BasePageListTable");
                    basePageListTable.Columns.Add("BasePage", typeof(string));

                    foreach (string page in ProgectSettings.BasePageCollection)
                    {
                        basePageListTable.Rows.Add(page);
                    }

                    List <string> hiddenColumns = new List <string>();

                    foreach (PropertyInfo property in typeof(DataRowComponents).GetProperties())
                    {
                        Type type = property.PropertyType;
                        DisplayNameAttribute[] propertyArrey = (DisplayNameAttribute[])
                                                               (property.GetCustomAttributes(typeof(DisplayNameAttribute), true));

                        HidePropertyAttribute[] hidePropertyArrey = (HidePropertyAttribute[])
                                                                    (property.GetCustomAttributes(typeof(HidePropertyAttribute), true));

                        DataColumn col;
                        if (propertyArrey.Count() != 0)
                        {
                            col = new DataColumn(propertyArrey.First().DisplayName, type);
                        }
                        else
                        {
                            col = new DataColumn(property.Name, type);
                        }

                        dataTable.Columns.Add(col);

                        if (hidePropertyArrey.Count() != 0 && hidePropertyArrey.First().IsHidden)
                        {
                            hiddenColumns.Add(col.ColumnName);
                        }
                    }

                    DataColumn dataSource = new DataColumn("DataSource", typeof(DataRowComponents));
                    dataTable.Columns.Add(dataSource);

                    foreach (DataRowComponents row in dataRowCollection)
                    {
                        dataTable.Rows.Add(row.IsSelected, row.Text, row.ClassName, row.Namespace, row.BasePage, row.Tag, row);
                    }

                    dataSet.Tables.Add(dataTable);
                    dataSet.Tables.Add(basePageListTable);

                    DataColumn child  = dataSet.Tables["DataRowComponentsCollection"].Columns["Custom base page"];
                    DataColumn parent = dataSet.Tables["BasePageListTable"].Columns["BasePage"];
                    parent.Unique = true;
                    ForeignKeyConstraint fk = new ForeignKeyConstraint("FK_BasePage", parent, child);
                    dataSet.Tables["DataRowComponentsCollection"].Constraints.Add(fk);
                    dataSet.Relations.Add("BasePage",
                                          parent,
                                          child);

                    DataRelationCollection            relationCollection = dataSet.Relations;
                    SortedList <string, DataRelation> relCollection      = new SortedList <string, DataRelation>();

                    foreach (DataRelation rel in relationCollection)
                    {
                        if (rel.ChildTable.TableName == "DataRowComponentsCollection")
                        {
                            relCollection.Add(rel.ChildColumns.First().ColumnName, rel);
                        }
                    }

                    GridView gridview = new GridView();
                    listview.DataContext = dataTable;
                    Binding bind = new Binding();
                    listview.ItemsSource = dataTable as IEnumerable;

                    foreach (DataColumn col in dataTable.Columns)
                    {
                        GridViewColumn gvcolumn = new GridViewColumn();
                        gvcolumn.Header = col.ColumnName;
                        if (hiddenColumns.Contains(col.ColumnName))
                        {
                            gvcolumn.Width = 0;
                        }

                        if (relCollection.Keys.Contains(col.ColumnName))
                        {
                            DataColumn parentColumn = relCollection.Where(p => p.Key == col.ColumnName)
                                                      .Select(p => p.Value).First().ParentColumns.First();

                            DataTemplate dtCombo = new DataTemplate();
                            dtCombo.DataType = typeof(String);
                            FrameworkElementFactory fefCombo = new FrameworkElementFactory(typeof(ComboBox));
                            Binding bdCombo = new Binding(col.ColumnName);

                            List <string> basePagesList = new List <string>();

                            foreach (DataRow comboRow in parentColumn.Table.Rows)
                            {
                                basePagesList.Add(comboRow.ItemArray.First().ToString());
                            }

                            ComboBox templateComboBox = new ComboBox();
                            templateComboBox.FontSize = 12;
                            fefCombo.SetValue(ComboBox.ItemsSourceProperty, basePagesList);
                            fefCombo.SetValue(ComboBox.BackgroundProperty, TransparentBrush);
                            fefCombo.SetValue(ComboBox.ForegroundProperty, new SolidColorBrush(Colors.Goldenrod));
                            fefCombo.SetValue(ComboBox.BorderBrushProperty, TransparentBrush);
                            fefCombo.SetValue(ComboBox.FontSizeProperty, templateComboBox.FontSize);
                            fefCombo.SetBinding(ComboBox.SelectedItemProperty, bdCombo);
                            dtCombo.VisualTree    = fefCombo;
                            gvcolumn.CellTemplate = dtCombo;
                            gridview.Columns.Add(gvcolumn);
                        }
                        else
                        if (col.DataType == typeof(bool))
                        {
                            DataTemplate dtCheckbox = new DataTemplate();
                            dtCheckbox.DataType = typeof(Boolean);
                            FrameworkElementFactory fefCheckbox = new FrameworkElementFactory(typeof(CheckBox));
                            Binding bdCheckbox = new Binding(col.ColumnName);
                            fefCheckbox.SetBinding(CheckBox.IsCheckedProperty, bdCheckbox);
                            dtCheckbox.VisualTree = fefCheckbox;
                            gvcolumn.CellTemplate = dtCheckbox;
                            gridview.Columns.Add(gvcolumn);
                        }
                        else
                        if (col.DataType == typeof(string))
                        {
                            DataTemplate dtTextBox = new DataTemplate();
                            dtTextBox.DataType = typeof(string);
                            FrameworkElementFactory fefTextBox = new FrameworkElementFactory(typeof(TextBox));
                            Binding bdTextBox           = new Binding(col.ColumnName);
                            Binding bdIsTextBoxReadOnly = new Binding("Existing jaz files");
                            fefTextBox.SetBinding(TextBox.TextProperty, bdTextBox);
                            TextBox templateTB = new TextBox();
                            templateTB.FontSize = 12;

                            if (col.ColumnName == "Path to file")
                            {
                                fefTextBox.SetValue(TextBox.IsReadOnlyProperty, true);
                            }
                            else
                            {
                                fefTextBox.SetBinding(TextBox.IsReadOnlyProperty, bdIsTextBoxReadOnly);
                            }

                            fefTextBox.SetValue(TextBox.BackgroundProperty, TransparentBrush);
                            fefTextBox.SetValue(TextBox.ForegroundProperty, new SolidColorBrush(Colors.Goldenrod));
                            fefTextBox.SetValue(TextBox.FontSizeProperty, templateTB.FontSize);
                            fefTextBox.SetValue(TextBox.BorderBrushProperty, TransparentBrush);
                            dtTextBox.VisualTree  = fefTextBox;
                            gvcolumn.CellTemplate = dtTextBox;
                            gridview.Columns.Add(gvcolumn);
                        }
                        else
                        {
                            gvcolumn.Width = 0;
                            gridview.Columns.Add(gvcolumn);
                        }
                    }

                    GridViewColumn buttonDetailColumn = new GridViewColumn();

                    DataTemplate dtButtonDetail = new DataTemplate();
                    dtButtonDetail.DataType = typeof(String);

                    Button templateButton = new Button();
                    templateButton.Width = 50;

                    FrameworkElementFactory fefForButton = new FrameworkElementFactory(typeof(Button));
                    fefForButton.SetValue(Button.ContentProperty, "...");
                    fefForButton.SetValue(Button.WidthProperty, templateButton.Width);
                    Binding bdButton = new Binding(dataTable.Columns["DataSource"].ColumnName);
                    fefForButton.SetBinding(Button.TagProperty, bdButton);
                    fefForButton.AddHandler(Button.ClickEvent, new RoutedEventHandler(innerButtonInListView_Click));

                    Binding bindButtonDetail = new Binding();
                    fefForButton.SetBinding(TextBox.NameProperty, bindButtonDetail);
                    dtButtonDetail.VisualTree = fefForButton;

                    buttonDetailColumn.CellTemplate = dtButtonDetail;

                    #region DataGrid menu

                    ContextMenu contextMenuVisibleColumns = new ContextMenu();
                    MenuItem    existingJazFiles          = new MenuItem()
                    {
                        Header = "Existing Jaz files", IsEnabled = false
                    };
                    MenuItem path = new MenuItem()
                    {
                        Header = "Path to page", IsEnabled = false
                    };
                    MenuItem classNameMenuItem = new MenuItem()
                    {
                        Header = "Class name"
                    };
                    MenuItem namespaceMenuItem = new MenuItem()
                    {
                        Header = "Namespace"
                    };
                    MenuItem basePageMenuItem = new MenuItem()
                    {
                        Header = "Base page"
                    };
                    contextMenuVisibleColumns.Items.Add(existingJazFiles);
                    contextMenuVisibleColumns.Items.Add(path);
                    contextMenuVisibleColumns.Items.Add(classNameMenuItem);
                    contextMenuVisibleColumns.Items.Add(namespaceMenuItem);
                    contextMenuVisibleColumns.Items.Add(basePageMenuItem);
                    foreach (MenuItem contextItem in contextMenuVisibleColumns.Items)
                    {
                        contextItem.IsCheckable = true;
                        contextItem.IsChecked   = true;

                        contextItem.Checked +=
                            new RoutedEventHandler(contextMenuStripDataGridView_CheckedChanged);
                        contextItem.Unchecked +=
                            new RoutedEventHandler(contextMenuStripDataGridView_CheckedChanged);
                        switch (contextItem.Header.ToString())
                        {
                        case "Class name": contextItem.Tag = "Guessed class name";
                            break;

                        case "Namespace": contextItem.Tag = "Guessed namespace";
                            break;

                        case "Base page": contextItem.Tag = "Custom base page";
                            break;
                        }
                    }

                    #endregion

                    FrameworkElementFactory fefHeaderMenuButton = new FrameworkElementFactory(typeof(Button));
                    fefHeaderMenuButton.SetValue(Button.ContentProperty, "Details");
                    fefHeaderMenuButton.SetValue(Button.ContextMenuProperty, contextMenuVisibleColumns);
                    fefHeaderMenuButton.SetValue(Button.BackgroundProperty, TransparentBrush);
                    fefHeaderMenuButton.SetValue(Button.BorderBrushProperty, TransparentBrush);
                    DataTemplate dtHeaderMenuButton = new DataTemplate();
                    dtHeaderMenuButton.VisualTree     = fefHeaderMenuButton;
                    buttonDetailColumn.HeaderTemplate = dtHeaderMenuButton;

                    gridview.Columns.Add(buttonDetailColumn);
                    listview.View = gridview;
                    listview.SetBinding(ListView.ItemsSourceProperty, bind);
                    listview.Focus();

                    #endregion

                    //Content = listview;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
                }
            }
        }
        private void OnUpdateGridView(GridViewColumnCollection gridViewColumnCollection)
        {
            var isOldGridView = gridViewColumnCollection == _oldGridViewColumnCollection;

            if (!isOldGridView && _oldGridViewColumnCollection != null)
            {
                //unsubscribe old GridView
                _oldGridViewColumnCollection.CollectionChanged -= ColumnsOnCollectionChanged;
                ResetCurrentGridViewColumn();
                _oldGridViewColumnCollection = null;
            }

            if (gridViewColumnCollection == null)
            {
                return;
            }

            if (!isOldGridView)
            {
                gridViewColumnCollection.CollectionChanged += ColumnsOnCollectionChanged;
            }

            if (gridViewColumnCollection.Count == 0)
            {
                return;
            }

            var firstColumn = gridViewColumnCollection[0];

            ResetCurrentGridViewColumn();
            _currentGridViewColumn = firstColumn;

            if (firstColumn.CellTemplate == null)
            {
                _oldDataTemplate = firstColumn.CellTemplate;
                var dataTemplate = new DataTemplate();
                var spFactory    = new FrameworkElementFactory(typeof(ContentPresenter));
                spFactory.SetBinding(ContentPresenter.ContentProperty, firstColumn.DisplayMemberBinding);
                spFactory.SetBinding(MarginProperty,
                                     new Binding
                {
                    RelativeSource =
                        new RelativeSource(RelativeSourceMode.FindAncestor, typeof(TreeListViewItem), 1),
                    Converter = (IValueConverter)Application.Current.Resources["LengthConverter"]
                });

                dataTemplate.VisualTree              = spFactory;
                _oldDisplayMemberBindingBase         = firstColumn.DisplayMemberBinding;
                firstColumn.DisplayMemberBinding     = null;
                firstColumn.CellTemplate             = dataTemplate;
                _currentGridViewColumnCustomTemplate = false;
            }
            else
            {
                _oldDataTemplate = firstColumn.CellTemplate;
                var dataTemplate = new DataTemplate();
                var spFactory    = new FrameworkElementFactory(typeof(ContentPresenter));
                spFactory.SetValue(ContentPresenter.ContentTemplateProperty, firstColumn.CellTemplate);
                spFactory.SetBinding(ContentPresenter.ContentProperty, new Binding("."));
                spFactory.SetBinding(MarginProperty,
                                     new Binding
                {
                    RelativeSource =
                        new RelativeSource(RelativeSourceMode.FindAncestor, typeof(TreeListViewItem), 1),
                    Converter = (IValueConverter)Application.Current.Resources["LengthConverter"]
                });
                dataTemplate.VisualTree = spFactory;

                firstColumn.CellTemplate             = dataTemplate;
                _currentGridViewColumnCustomTemplate = true;
            }

            _oldGridViewColumnCollection = gridViewColumnCollection;
        }
示例#9
0
 public static string GetSortPropertyName(GridViewColumn obj)
 {
     return((string)obj.GetValue(SortPropertyNameProperty));
 }
示例#10
0
 public MyFilteringControl(GridViewColumn column) : base(column)
 {
 }
 public override bool IsCompatible(GridViewColumn data, object context)
 {
     return data.Name == "Select" &&
         context is GridTableHeaderRowElement &&
         base.IsCompatible(data, context);
 }
 public override bool IsCompatible(GridViewColumn data, object context)
 {
     return(data is RadioButtonColumn && context is GridDataRowElement);
 }
示例#13
0
        public CtlRecipients()
        {
            GridView gv = new GridView();

            GridViewColumn c = new GridViewColumn();

            c.DisplayMemberBinding = new Binding("Value");
            c.Header = new GridViewColumnHeader()
            {
                Tag = "Value", Content = "Address"
            };
            c.Width = 250;
            gv.Columns.Add(c);

            c = new GridViewColumn();
            c.DisplayMemberBinding = new Binding("Comment");
            c.Header = new GridViewColumnHeader()
            {
                Tag = "Comment", Content = "Comment"
            };
            c.Width = 300;
            gv.Columns.Add(c);

            View = gv;
            LvRecipientsSortHelper.ListView = this;

            var menu = new ContextMenu();

            var mi = new MenuItem()
            {
                Header = "_Send"
            };

            mi.Click += OnSendMoney;
            menu.Items.Add(mi);

            menu.Items.Add(new Separator());

            mi = new MenuItem()
            {
                Header = "_Add"
            };
            mi.Click += OnAddRecipient;
            menu.Items.Add(mi);

            mi = new MenuItem()
            {
                Header = "_Edit"
            };
            mi.Click += OnEditRecipient;
            menu.Items.Add(mi);


            mi = new MenuItem()
            {
                Header = "_Remove"
            };
            mi.Click += OnRemoveRecipient;
            menu.Items.Add(mi);


            ContextMenu = menu;
        }
示例#14
0
        private void Initialize(EntityViewerViewModel <TEntity> viewModel)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException("viewModel");
            }

            Buttons = new System.Collections.ObjectModel.ObservableCollection <AppButton>();
            Buttons.CollectionChanged += Buttons_CollectionChanged;

            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Colours.xaml") });
            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml") });
            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml") });
            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml") });
            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml") });
            //Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/Wodsoft.ComBoost.Business.Remote;component/Resources/Icons.xaml") });

            ViewModel = viewModel;
            viewModel.PropertyChanged += viewModel_PropertyChanged;
            viewModel.PageSize         = 30;

            if (viewModel.AutoGenerateData && ViewModel.Items.Count == 0 && ViewModel.ParentModels == null)
            {
                viewModel.ParentModels = EntityParentSelectorViewModel.CreateModel <TEntity>(BussinessApplication.Current.ContextBuilder);
            }

            Grid grid = new Grid();

            grid.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(100, GridUnitType.Star)
            });
            grid.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(100, GridUnitType.Pixel)
            });
            if (viewModel.ParentModels != null && viewModel.ParentModels.Length != 0)
            {
                grid.ColumnDefinitions.Add(new ColumnDefinition {
                    Width = new GridLength(200, GridUnitType.Pixel)
                });
                grid.ColumnDefinitions.Add(new ColumnDefinition {
                    Width = new GridLength(1, GridUnitType.Star)
                });

                ParentTree = new TreeView();
                ParentTree.BorderThickness = new Thickness();
                TreeViewItem item = new TreeViewItem();
                item.Header      = "全部";
                item.IsExpanded  = true;
                item.ItemsSource = GetParentItems(viewModel.ParentModels);
                ParentTree.Items.Add(item);
                ParentTree.SelectedItemChanged += ParentTree_SelectedItemChanged;
                item.Margin = new Thickness(0, 0, 8, 0);
                grid.Children.Add(ParentTree);

                GridSplitter splitter = new GridSplitter();
                splitter.Width = 8;
                splitter.HorizontalAlignment = System.Windows.HorizontalAlignment.Right;
                grid.Children.Add(splitter);
            }


            #region 列表显示
            View = new ListView();
            View.BorderThickness = new Thickness();
            if (viewModel.ParentModels != null && viewModel.ParentModels.Length != 0)
            {
                Grid.SetColumn(View, 1);
            }
            View.SelectionMode = SelectionMode.Single;
            GridView view = new GridView();
            view.AllowsColumnReorder = false;
            var entityType        = typeof(TEntity);
            var viewBuilder       = viewModel.ViewBuilder;
            var visableProperties = viewBuilder.VisableProperties;
            var hideProperties    = viewBuilder.HideProperties;

            PropertyInfo[] properties;
            if (hideProperties == null)
            {
                properties = visableProperties.Select(v => entityType.GetProperty(v)).Where(t => t != null).ToArray();
            }
            else
            {
                properties = visableProperties.Except(hideProperties).Select(v => entityType.GetProperty(v)).Where(t => t != null).ToArray();
            }

            foreach (var property in properties)
            {
                GridViewColumn column  = new GridViewColumn();
                var            display = property.GetCustomAttributes(typeof(DisplayAttribute), false).FirstOrDefault() as DisplayAttribute;
                if (display == null)
                {
                    column.Header = property.Name;
                }
                else
                {
                    column.Header = new Label {
                        Content = display.Name, ToolTip = display.Description
                    }
                };

                DataTemplate            dt  = new DataTemplate();
                FrameworkElementFactory fef = new FrameworkElementFactory(typeof(Label));
                Binding binding             = new Binding();
                binding.Path = new PropertyPath(property.Name);
                fef.SetBinding(Label.ContentProperty, binding);
                dt.VisualTree       = fef;
                column.CellTemplate = dt;
                view.Columns.Add(column);
            }
            View.View = view;

            viewModel.UpdateSource();
            View.DataContext = viewModel;
            View.SetBinding(DataGrid.ItemsSourceProperty, new Binding("ItemsSource"));

            grid.Children.Add(View);

            #endregion

            #region  钮显示

            AppButtonPanel = new AppButtonPanel();
            Grid.SetRow(AppButtonPanel, 1);
            if (viewModel.ParentModels != null && viewModel.ParentModels.Length != 0)
            {
                Grid.SetColumnSpan(AppButtonPanel, 2);
            }
            grid.Children.Add(AppButtonPanel);

            AppButton back = new AppButton(new CustomCommand(null, Back));
            back.Text  = "返回";
            back.Image = (Canvas)Resources["appbar_arrow_left"];
            AppButtonPanel.Items.Add(back);

            //AppButton firstPage = new AppButton(new CustomCommand(CanFirstPage, FirstPage));
            //firstPage.Text = "第一页";
            //firstPage.Image = (Canvas)Application.Current.Resources["appbar_navigate_previous"];
            //AppButtonPanel.Items.Add(firstPage);

            AppButton previousPage = new AppButton(new CustomCommand(CanPreviousPage, PreviousPage));
            previousPage.Text  = "上一页";
            previousPage.Image = (Canvas)Resources["appbar_navigate_previous"];
            AppButtonPanel.Items.Add(previousPage);

            AppButton nextPage = new AppButton(new CustomCommand(CanNextPage, NextPage));
            nextPage.Text  = "下一页";
            nextPage.Image = (Canvas)Resources["appbar_navigate_next"];
            AppButtonPanel.Items.Add(nextPage);

            if (viewModel.ViewBuilder.AllowedAdd)
            {
                AppButton add = new AppButton(new CustomCommand(CanAdd, Add));
                add.Text  = "新增";
                add.Image = (Canvas)Resources["appbar_add"];
                AppButtonPanel.Items.Add(add);
            }

            if (viewModel.ViewBuilder.AllowedRemove)
            {
                AppButton remove = new AppItemButton(View, CanRemove, Remove);
                remove.Text  = "删除";
                remove.Image = (Canvas)Resources["appbar_delete"];
                AppButtonPanel.Items.Add(remove);
            }

            if (viewModel.ViewBuilder.AllowedEdit)
            {
                AppButton edit = new AppItemButton(View, CanEdit, Edit);
                edit.Text  = "编辑";
                edit.Image = (Canvas)Resources["appbar_edit"];
                AppButtonPanel.Items.Add(edit);
            }

            #endregion

            Content = grid;

            Loaded += Viewer_Loaded;
        }
示例#15
0
        private void ConnectionTree_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs <object> e)
        {
            this.ConnectionListView.Items.Clear();

            GridView GridView;

            if ((GridView = this.ConnectionListView.View as GridView) != null)
            {
                while (GridView.Columns.Count > 2)
                {
                    GridView.Columns.RemoveAt(2);
                }
            }

            this.selectedNode = this.ConnectionTree.SelectedItem as TreeNode;
            if (this.selectedNode != null)
            {
                TreeNode[] Children = this.selectedNode.Children;
                Dictionary <string, bool> Headers = null;
                DisplayableParameters     Parameters;

                if (Children != null)
                {
                    foreach (TreeNode Child in this.selectedNode.Children)
                    {
                        this.ConnectionListView.Items.Add(Child);

                        if (GridView != null)
                        {
                            Parameters = Child.DisplayableParameters;
                            if (Parameters != null)
                            {
                                foreach (Parameter P in Parameters.Ordered)
                                {
                                    if (P.Id == "NodeId" || P.Id == "Type")
                                    {
                                        continue;
                                    }

                                    if (Headers is null)
                                    {
                                        Headers = new Dictionary <string, bool>();
                                    }

                                    if (!Headers.ContainsKey(P.Id))
                                    {
                                        Headers[P.Id] = true;

                                        GridViewColumn Column = new GridViewColumn()
                                        {
                                            Header = P.Name,
                                            Width  = double.NaN,
                                            DisplayMemberBinding = new Binding("DisplayableParameters[" + P.Id + "]")
                                        };

                                        GridView.Columns.Add(Column);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            MainWindow MainWindow = MainWindow.FindWindow(this);

            if (MainWindow != null)
            {
                MainWindow.SelectionChanged();
            }
        }
示例#16
0
        public Page1()
        {
            InitializeComponent();
            MediaRepo.MediaCollectionImported += MediaRepo_MediaCollectionImported;
            this.delete              = Delete.GetInstance();
            delete.SomethingDeleted += Delete_SomethingDeleted;
            GridViewColumn gridViewColumnUrenkel1 = new GridViewColumn();

            gridViewColumnUrenkel1.Header = "Id";
            gridViewColumnUrenkel1.DisplayMemberBinding = new Binding("Id");

            GridViewColumn gridViewColumnUrenkel2 = new GridViewColumn();

            gridViewColumnUrenkel2.Header = "Bezeichnung";
            gridViewColumnUrenkel2.DisplayMemberBinding = new Binding("Name");

            StackPanel     stackPanelKind2        = new StackPanel();
            GridViewColumn gridViewColumnUrenkel3 = new GridViewColumn();

            gridViewColumnUrenkel3.Header = "Url";
            gridViewColumnUrenkel3.DisplayMemberBinding = new Binding("Link");

            GridViewColumn gridViewColumnUrenkel4 = new GridViewColumn();

            gridViewColumnUrenkel4.Header = "PublisherId";
            gridViewColumnUrenkel4.DisplayMemberBinding = new Binding("PublisherId");

            GridViewColumn gridViewColumnUrenkel5 = new GridViewColumn();

            gridViewColumnUrenkel5.Header       = "";
            gridViewColumnUrenkel5.CellTemplate = (DataTemplate)this.Resources["tempplate1"];

            GridViewColumn gridViewColumnUrenkel6 = new GridViewColumn();

            gridViewColumnUrenkel6.Header       = "";
            gridViewColumnUrenkel6.CellTemplate = (DataTemplate)this.Resources["template2"];

            GridView gridViewEnkel = new GridView();

            gridViewEnkel.Columns.Add(gridViewColumnUrenkel1);
            gridViewEnkel.Columns.Add(gridViewColumnUrenkel2);
            gridViewEnkel.Columns.Add(gridViewColumnUrenkel3);
            gridViewEnkel.Columns.Add(gridViewColumnUrenkel4);
            gridViewEnkel.Columns.Add(gridViewColumnUrenkel5);
            gridViewEnkel.Columns.Add(gridViewColumnUrenkel6);

            listViewKind = new ListView()
            {
                View   = gridViewEnkel,
                Height = (double)Application.Current.Resources["RandomDouble"],
                Margin = new Thickness(0, 23, 0, 0)
            };
            //var y = new List<Medium>
            //    {
            //        new Medium()
            //        {
            //            Id = zahl++, Name = "Medium1", Link = "abcdef.de", PublisherId=2
            //        },
            //        new Medium()
            //        {
            //            Id = zahl++, Name = "Medium2", Link = "ertz.de", PublisherId=2
            //        }
            //    };
            //foreach (var item in y)
            //{
            //    listViewKind.Items.Add(item);
            //}
            listViewKind.Resources.Add(typeof(ListViewItem), this.Resources["listItem"]);
            List <Medium> a = new List <Medium>();

            foreach (var item in listViewKind.Items)
            {
                a.Add((Medium)item);
            }
            MediaRepo.Media = a;

            StackPanel stackPanelMama = new StackPanel();

            stackPanelMama.Children.Add(listViewKind);

            StackPanel stackPanelKind1 = new StackPanel();
            StackPanel stackPanelKind3 = new StackPanel();

            stackPanelKind1.Orientation = Orientation.Horizontal;
            stackPanelKind2.Orientation = Orientation.Horizontal;
            stackPanelKind3.Orientation = Orientation.Horizontal;
            stackPanelKind1.Margin      = new Thickness(31, 10, 0, 0);
            stackPanelKind2.Margin      = new Thickness(31, 10, 0, 0);
            stackPanelKind3.Margin      = new Thickness(31, 10, 0, 0);

            if (new Data().TryImportMedia(
                    Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Medium.csv"),
                    out var media))
            {
                foreach (var _ in media)
                {
                    Trace.WriteLine(_);
                }
            }

            TextBlock textBlockEnkel1 = new TextBlock();

            textBlockEnkel1.Text  = "Bezeichnung";
            textBlockEnkel1.Width = 101;
            stackPanelKind1.Children.Add(textBlockEnkel1);
            stackPanelKind1.Children.Add(tb1);
            TextBlock textBlockEnkel2 = new TextBlock();

            textBlockEnkel2.Text  = "Url";
            textBlockEnkel2.Width = 101;
            TextBlock textBlockEnkel3 = new TextBlock();

            textBlockEnkel3.Text  = "Publisher";
            textBlockEnkel3.Width = 101;
            stackPanelKind2.Children.Add(textBlockEnkel2);
            stackPanelKind3.Children.Add(textBlockEnkel3);
            tb2 = new TextBox();
            stackPanelKind2.Children.Add(tb2);
            comboBoxEnkel = new ComboBox();
            comboBoxEnkel.DisplayMemberPath = "Name";
            tb1.Width           = 200;
            tb2.Width           = 200;
            comboBoxEnkel.Width = 200;
            stackPanelKind3.Children.Add(comboBoxEnkel);

            stackPanelMama.Children.Add(stackPanelKind1);
            stackPanelMama.Children.Add(stackPanelKind2);
            stackPanelMama.Children.Add(stackPanelKind3);

            StackPanel clickmes = new StackPanel();

            clickadd.Content = "Speichern";
            clickadd.Click  += Add;
            clickadd.Margin  = new Thickness(31, 10, 0, 0);
            clickadd.Width   = 301;

            Button clickedit = new Button();

            clickedit.Content = "Zurücksetzen";
            clickedit.Click  += Button_Click_3;
            clickedit.Margin  = new Thickness(31, 10, 0, 0);
            clickedit.Width   = 301;
            clickmes.Children.Add(clickadd);
            clickmes.Children.Add(clickedit);
            clickadd.HorizontalAlignment  = HorizontalAlignment.Left;
            clickedit.HorizontalAlignment = HorizontalAlignment.Left;
            stackPanelMama.Children.Add(clickmes);

            this.Content = stackPanelMama;

            this.logger = new CsvLogger(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Logfile.log"));
        }
示例#17
0
        private void InitUI()

        {
            var alltools = CurrentETLTools.Take(ETLMount).ToList();
            int i        = 0;

            foreach (var currentEtlTool in CurrentETLTools)
            {
                (currentEtlTool).ETLIndex = i++;
            }

            if (generateFloatGrid)
            {
                var gridview = PluginProvider.GetObjectInstance <IDataViewer>("可编辑列表");

                var r = gridview.SetCurrentView(Documents);

                if (ControlExtended.DockableManager == null)
                {
                    return;
                }

                ControlExtended.DockableManager.AddDockAbleContent(
                    FrmState.Custom, r, "样例数据");
                generateFloatGrid = false;
            }
            else
            {
                var view = new GridView();


                Dict.Clear();
                var keys = new List <string> {
                    ""
                };
                var docKeys = Documents.GetKeys(null, SampleMount);

                keys.AddRange(docKeys);
                var tool = CurrentTool;


                foreach (var key in keys)
                {
                    var col = new GridViewColumn
                    {
                        Header = key,
                        DisplayMemberBinding = new Binding($"[{key}]"),
                        Width = 155
                    };
                    view.Columns.Add(col);

                    var group = new SmartGroup
                    {
                        Name  = key,
                        Value = alltools.Where(d => d.Column == key).ToList()
                    };

                    group.PropertyChanged += (s, e) =>
                    {
                        if (e.PropertyName == "Name")
                        {
                            var last = alltools.LastOrDefault() as IColumnDataTransformer;
                            if (last != null && last.TypeName == "列名修改器" && last.NewColumn == key)
                            {
                                last.NewColumn = group.Name;
                            }
                            else
                            {
                                last           = PluginProvider.GetObjectInstance("列名修改器") as IColumnDataTransformer;
                                last.NewColumn = group.Name;
                                last.Column    = key;
                                InsertModule(last);
                                ETLMount++;
                                OnPropertyChanged("ETLMount");
                                RefreshSamples();
                            }
                        }
                    };
                    Dict.Add(group
                             );
                }
                if (tool != null)
                {
                    Dict.Where(d => d.Name == tool.Column).Execute(d => d.GroupType = GroupType.Input);
                    var transformer = tool as IColumnDataTransformer;
                    if (transformer != null)
                    {
                        var newcol = transformer.NewColumn.Split(' ');
                        if (transformer.IsMultiYield)
                        {
                            Dict.Execute(d => d.GroupType = newcol.Contains(d.Name)? GroupType.Input:GroupType.Output);
                        }
                        else
                        {
                            Dict.Where(d => d.Name == transformer.NewColumn).Execute(d => d.GroupType = GroupType.Output);;
                        }
                    }
                }
                var nullgroup = Dict.FirstOrDefault(d => string.IsNullOrEmpty(d.Name));
                nullgroup?.Value.AddRange(
                    alltools.Where(
                        d =>
                        Documents.GetKeys().Contains(d.Column) == false &&
                        string.IsNullOrEmpty(d.Column) == false));
                if (MainDescription.IsUIForm && IsUISupport)
                {
                    if (dataView != null)
                    {
                        dataView.View = view;
                    }
                }
            }
        }
 public override void Attach(GridViewColumn data, object context)
 {
     base.Attach(data, context);
     GridControl.DataBindingComplete += GridControl_DataBindingComplete;
     GridControl.ValueChanged += GridControl_ValueChanged;
 }
 public override void Initialize(GridViewColumn column, GridRowElement row)
 {
     base.Initialize(column, row);
     column.AllowSort = false;
 }
 /// <summary>
 /// process the column property chagned event 
 /// </summary> 
 internal abstract void OnColumnPropertyChanged(GridViewColumn column, string propertyName);
 public ASPxSmartGridViewTableHeaderCell(ASPxGridViewRenderHelper renderHelper, GridViewColumn column, GridViewHeaderLocation location, bool removeLeftBorder, bool removeRightBorder) 
     : base(renderHelper, column, location, removeLeftBorder, removeRightBorder)
 {
 }
示例#22
0
        /// <summary>
        /// Updates aggregate function according to aggregation result.
        /// </summary>
        /// <param name="gridColumn">The grid column.</param>
        /// <param name="columnItem">The column item.</param>
        /// <param name="aggregateDefinition">The aggregate definition.</param>
        /// <param name="result">The aggregate result.</param>
        private static void UpdateAggregationResult(GridViewColumn gridColumn, IColumnItem columnItem, AggregateDefinition aggregateDefinition, AggregateResult result)
        {
            if (aggregateDefinition == null || result == null)
                return;

            UpdateFunctions(aggregateDefinition.FunctionName, result, gridColumn);
            UpdateCriteriaList(aggregateDefinition, columnItem);
        }
 public ASPxSmartGridViewHtmlHeaderContent(GridViewColumn column, GridViewHeaderLocation location) 
     : base(column, location)
 {
 }
示例#24
0
    public void CreateGridViewRetale(Page mypage, ASPxGridView gridViewName, DataTable sourceField, int modulerelateid, string keyFieldName, string ID, bool isStored)
    {
        try
        {
            //SETTING GRID
            gridViewName.KeyFieldName = isStored ? keyFieldName : keyFieldName.ToLower();
            gridViewName.ClientInstanceName = ID;
            gridViewName.ID = ID;
            gridViewName.Width = Unit.Percentage(100);

            //add checkbox column
            GridViewCommandColumn gridCommandColumn = new GridViewCommandColumn();
            gridCommandColumn.ShowSelectCheckbox = true;
            gridCommandColumn.VisibleIndex = 0;

            gridCommandColumn.HeaderTemplate = new MyHeaderCheckBox(gridViewName.ClientInstanceName, true);
            gridCommandColumn.Width = Unit.Pixel(35);
            gridViewName.Columns.Add(gridCommandColumn);

            //lay duong dan form newedit
            string popupWindowControlURL = string.Format(ConfigurationManager.AppSettings["PopupMasterURL"].ToString(), modulerelateid);

            //lấy thông tin module hiện tại với quyền userid hiện tại
            DataTable dtCheckRight = ObjectUtils.getModuleRolesByUser(modulerelateid, CU.getuserid());

            string formsetting = "";
            if (dtCheckRight.Rows[0]["formsetting"] != null)
                formsetting = dtCheckRight.Rows[0]["formsetting"].ToString();//gviewrl.GetRowKey(gviewrl.GetFocusedRowIndex()).toString()

            //tao su kien doubleclick cho lưới
            gridViewName.ClientSideEvents.RowDblClick = "function(s,e){ js:openModalEditWindowRelate('" + popupWindowControlURL + "','" + formsetting + "',s.GetRowKey(e.visibleIndex));}";

            //kiem tra cache column
            if (mypage.Session["colcollect_gridrlMain" + modulerelateid] != null)
            {
                GridViewColumn[] colarray = mypage.Session["colcollect_gridrlMain" + modulerelateid] as GridViewColumn[];
                gridViewName.Columns.AddRange(colarray);
                List<List<ASPxSummaryItem>> summarylist = mypage.Session["colcollect_gridMain_summary" + modulerelateid] as List<List<ASPxSummaryItem>>;
                if (summarylist != null)
                {
                    if (summarylist.Count > 0)
                    {
                        gridViewName.Settings.ShowFooter = true;
                        gridViewName.GroupSummary.AddRange(summarylist[0]);
                        gridViewName.TotalSummary.AddRange(summarylist[1]);

                    }
                }

            }
            else
            {
                List<ASPxSummaryItem> groupitem = new List<ASPxSummaryItem>();
                List<ASPxSummaryItem> footeritem = new List<ASPxSummaryItem>();
                GridViewColumn[] colarray = new GridViewColumn[sourceField.Rows.Count];
                string objectnamefk = string.Empty;
                for (int i = 0; i < sourceField.Rows.Count; i++)
                {

                    //SiAuto.Main.LogString("cot" + i.ToString(), sourceField.Rows[i]["fieldname"].ToString());
                    string fieldtext = sourceField.Rows[i]["fieldtext"].ToString();
                    string fieldname = isStored ? sourceField.Rows[i]["fieldname"].ToString() : sourceField.Rows[i]["fieldname"].ToString().ToLower();
                    string tablename = sourceField.Rows[i]["tablename"].ToString().ToLower();
                    string alias = sourceField.Rows[i]["alias"].ToString().ToLower();
                    int width = sourceField.Rows[i]["width"].ToString() == string.Empty ? 0 : int.Parse(sourceField.Rows[i]["width"].ToString());
                    string format = sourceField.Rows[i]["format"].ToString();
                    string tempeditor = sourceField.Rows[i]["tempeditor"].ToString();
                    string datasource = sourceField.Rows[i]["datasource"].ToString();
                    int isGroup = sourceField.Rows[i]["isGroup"].ToString() == string.Empty ? 0 : int.Parse(sourceField.Rows[i]["isGroup"].ToString());
                    string SummaryCalculator = sourceField.Rows[i]["SummaryCalculator"].ToString();
                    bool ishidden = false;
                    bool.TryParse(sourceField.Rows[i]["ishidden"].ToString(), out ishidden);

                    bool ishyperlinkrelate = sourceField.Rows[i]["ishyperlinkrelate"].ToString() == "True" ? true : false;

                    switch (sourceField.Rows[i]["tempcolumn"].ToString().ToLower())
                    {
                        case "textcolumn":
                            {
                                if (objectnamefk == string.Empty)
                                    objectnamefk = ObjectUtils.getObjectNameFromModuleId(modulerelateid);
                                GridViewDataTextColumn dc = BuildTextColumn(fieldtext, fieldname, alias, width, format, tempeditor, modulerelateid,
                                    tablename, datasource, ishyperlinkrelate, keyFieldName, objectnamefk);
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "checkcolumn":
                            {
                                GridViewDataCheckColumn dc = BuildCheckColumn(fieldtext, fieldname, alias, width);
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "datecolumn":
                            {
                                GridViewDataDateColumn dc = BuildDateColumn(fieldtext, fieldname, alias, width, format);
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "progressbarcolumn":
                            {
                                GridViewDataProgressBarColumn dc = BuildProgressBarColumn(fieldtext, fieldname, alias, width);
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                    }
                    gridViewName.Columns[fieldname].Visible = !ishidden;
                    List<ASPxSummaryItem> sitem = SummaryCalculatorOnGview(fieldname, fieldtext, SummaryCalculator, gridViewName);
                    if (sitem != null)
                    {
                        groupitem.Add(sitem[0]);
                        footeritem.Add(sitem[1]);
                    }
                }
                List<List<ASPxSummaryItem>> summarylist = new List<List<ASPxSummaryItem>>();
                summarylist.Add(groupitem);
                summarylist.Add(footeritem);
                mypage.Session["colcollect_gridrlMain" + modulerelateid] = colarray;
                mypage.Session["colcollect_gridMain_summary" + modulerelateid] = summarylist;
            }

            DataRow[] dataRows = sourceField.Select("isGroup>0", "isGroup ASC");
            if (dataRows.Length > 0)
            {
                gridViewName.Settings.ShowFooter = true;
                for (int i = 0; i < dataRows.Length; i++)
                {
                    string fieldname = dataRows[i]["fieldname"].ToString();
                    gridViewName.GroupBy(gridViewName.Columns[fieldname]);
                    ((GridViewDataTextColumn)gridViewName.Columns[fieldname]).GroupIndex = i;
                    gridViewName.GroupSummary.Add(DevExpress.Data.SummaryItemType.Count, fieldname).DisplayFormat = "Tổng:{0}";
                }
            }
            SiAuto.Main.LogColored(System.Drawing.Color.Chocolate, keyFieldName);

        }
        catch (Exception ex)
        {
            SiAuto.Main.LogColored(System.Drawing.Color.Red, ex.ToString());

        }
    }
示例#25
0
        /// <summary>
        /// Updates aggregate functions by name.
        /// </summary>
        /// <param name="functionName">The function name.</param>
        /// <param name="result">The aggregate result.</param>
        /// <param name="gridColumn">The grid column.</param>
        private static void UpdateFunctions(string functionName, AggregateResult result, GridViewColumn gridColumn)
        {
            if (gridColumn == null || string.IsNullOrWhiteSpace(functionName))
                return;

            var aggregateFunctions = gridColumn.AggregateFunctions;

            var func = aggregateFunctions.Cast<AggregateFunction<object, object>>().FirstOrDefault(x => x.FunctionName == functionName);
            if (func == null)
            {
                func = CreateAggregateFunction(functionName, result.SummaryType, result.Value);

                var index = aggregateFunctions.TakeWhile(x =>
                                    AggregateHelper.GetAttribute(
                                        AggregateHelper.GetTypeByFullName(x.Caption.Replace(":", null))).Order <
                                    AggregateHelper.GetAttribute(result.SummaryType).Order).Count();

                if (aggregateFunctions.Count < index)
                    aggregateFunctions.Add(func);
                else
                    aggregateFunctions.Insert(index, func);
            }
            else
            {
                func.AggregationExpression = x => result.Value;
            }
        }
示例#26
0
 public static void SetSortPropertyName(GridViewColumn obj, string value)
 {
     obj.SetValue(SortPropertyNameProperty, value);
 }
示例#27
0
    /// <summary>
    /// Hàm tạo column gridview động
    /// </summary>
    /// <param name="gridViewName">Tên lưới</param>
    /// <param name="sourceField">DataTable chứa danh sách các field column cần tạo control</param>
    /// <param name="strSQLDatasource">Datasource cho gridview</param>
    /// <param name="ssParamsListGridView">Danh dách các tham số để load datasource cho gridview</param>
    public void CreateGridViewDynamic(Page mypage, ASPxGridView gridViewName, DataTable sourceField, int moduleid, string keyFieldName, bool isStored)
    {
        try
        {
            //gridViewName.Columns.Clear();
            gridViewName.KeyFieldName = isStored ? keyFieldName : keyFieldName.ToLower();
            gridViewName.ClientInstanceName = "gview";//dat ten nay co dinh, khong thay doi duoc
            //Add header template
            GridViewCommandColumn gridCommandColumn = new GridViewCommandColumn();
            gridCommandColumn.ShowSelectCheckbox = true;
            gridCommandColumn.SelectAllCheckboxMode = GridViewSelectAllCheckBoxMode.Page;
            gridCommandColumn.VisibleIndex = 0;

            gridCommandColumn.Width = Unit.Pixel(35);
            gridViewName.Columns.Add(gridCommandColumn);
            //gridViewName.TotalSummary.Clear();
            //
            if (mypage.Session["colcollect_gridMain" + moduleid] != null)
            {
                GridViewColumn[] colarray = mypage.Session["colcollect_gridMain" + moduleid] as GridViewColumn[];
                gridViewName.Columns.AddRange(colarray);
                List<List<ASPxSummaryItem>> summarylist = mypage.Session["colcollect_gridMain_summary" + moduleid] as List<List<ASPxSummaryItem>>;
                if (summarylist != null)
                {
                    if (summarylist.Count > 0)
                    {
                        gridViewName.Settings.ShowFooter = true;
                        gridViewName.GroupSummary.AddRange(summarylist[0]);
                        gridViewName.TotalSummary.AddRange(summarylist[1]);

                    }
                }

            }
            else
            {

                string objectnamemain = string.Empty;
                List<ASPxSummaryItem> groupitem = new List<ASPxSummaryItem>();
                List<ASPxSummaryItem> footeritem = new List<ASPxSummaryItem>();
                GridViewColumn[] colarray = new GridViewColumn[sourceField.Rows.Count];

                for (int i = 0; i < sourceField.Rows.Count; i++)
                {

                    string fieldtext = sourceField.Rows[i]["fieldtext"].ToString();
                    string fieldname = isStored ? sourceField.Rows[i]["fieldname"].ToString() : sourceField.Rows[i]["fieldname"].ToString().ToLower();
                    string tablename = sourceField.Rows[i]["tablename"].ToString().ToLower();
                    string alias = sourceField.Rows[i]["alias"].ToString().ToLower();
                    int width = sourceField.Rows[i]["width"].ToString() == string.Empty ? 0 : int.Parse(sourceField.Rows[i]["width"].ToString());
                    string format = sourceField.Rows[i]["format"].ToString();
                    string tempeditor = sourceField.Rows[i]["tempeditor"].ToString();
                    string datasource = sourceField.Rows[i]["datasource"].ToString();
                    int isGroup = sourceField.Rows[i]["isGroup"].ToString() == string.Empty ? -1 : int.Parse(sourceField.Rows[i]["isGroup"].ToString());
                    string SummaryCalculator = sourceField.Rows[i]["SummaryCalculator"].ToString();
                    bool ishidden = false;
                    bool.TryParse(sourceField.Rows[i]["ishidden"].ToString(), out ishidden);
                    switch (sourceField.Rows[i]["tempcolumn"].ToString().ToLower())
                    {
                        case "bandcolumn":
                            {
                                GridViewBandColumn band = new GridViewBandColumn(fieldtext);
                                gridViewName.Columns.Add(band);
                                colarray[i] = band;
                                break;
                            }
                        case "textcolumn":
                            {
                                if (objectnamemain == string.Empty)
                                    objectnamemain = ObjectUtils.getObjectNameFromModuleId(moduleid);
                                GridViewDataTextColumn dc = BuildTextColumn(fieldtext, fieldname, alias, width, format, tempeditor, moduleid, tablename, datasource, false, keyFieldName, objectnamemain);
                                if (i < 2 && Utils.isMobileBrowser())
                                    dc.FixedStyle = GridViewColumnFixedStyle.Left;
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "checkcolumn":
                            {
                                GridViewDataCheckColumn dc = BuildCheckColumn(fieldtext, fieldname, alias, width);
                                if (i < 2 && Utils.isMobileBrowser())
                                    dc.FixedStyle = GridViewColumnFixedStyle.Left;
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "datecolumn":
                            {
                                GridViewDataDateColumn dc = BuildDateColumn(fieldtext, fieldname, alias, width, format);
                                if (i < 2 && Utils.isMobileBrowser())
                                    dc.FixedStyle = GridViewColumnFixedStyle.Left;
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                        case "progressbarcolumn":
                            {
                                GridViewDataProgressBarColumn dc = BuildProgressBarColumn(fieldtext, fieldname, alias, width);
                                if (i < 2 && Utils.isMobileBrowser())
                                    dc.FixedStyle = GridViewColumnFixedStyle.Left;
                                gridViewName.Columns.Add(dc);
                                colarray[i] = dc;
                                break;
                            }
                    }
                    gridViewName.Columns[fieldname].Visible = !ishidden;

                    List<ASPxSummaryItem> sitem = SummaryCalculatorOnGview(fieldname, fieldtext, SummaryCalculator, gridViewName);
                    if (sitem != null)
                    {
                        groupitem.Add(sitem[0]);
                        footeritem.Add(sitem[1]);
                    }
                }
                List<List<ASPxSummaryItem>> summarylist = new List<List<ASPxSummaryItem>>();
                summarylist.Add(groupitem);
                summarylist.Add(footeritem);
                mypage.Session["colcollect_gridMain" + moduleid] = colarray;
                mypage.Session["colcollect_gridMain_summary" + moduleid] = summarylist;
            }
            DataRow[] dataRows = sourceField.Select("ISNULL(isGroup,-1)>=0", "isGroup ASC");
            SiAuto.Main.LogDataTable("danh sach field chuan bi group filter ISNULL(isGroup,-1)>=0 isGroup ASC", sourceField);
            if (dataRows.Length > 0)
            {
                gridViewName.Settings.ShowGroupPanel = true;
                gridViewName.Settings.ShowFooter = true;
                for (int i = 0; i < dataRows.Length; i++)
                {
                    string fieldname = isStored ? dataRows[i]["fieldname"].ToString() : dataRows[i]["fieldname"].ToString().ToLower();
                    SiAuto.Main.LogColored(Color.Orange, fieldname);

                    gridViewName.GroupBy(gridViewName.Columns[fieldname], i);

                    //((GridViewDataTextColumn)gridViewName.Columns[fieldname]).GroupIndex = i;
                    //gridViewName.GroupSummary.Add(DevExpress.Data.SummaryItemType.Count, fieldname).DisplayFormat = "Tổng:{0}";
                }
            }

            SiAuto.Main.LogColored(System.Drawing.Color.Chocolate, keyFieldName);

        }
        catch (Exception ex)
        {
            SiAuto.Main.LogColored(System.Drawing.Color.Red, ex.ToString());
        }
    }
 public DistinctHierarchyValuesFilterDescriptor(GridViewColumn column)
     : this(column.FilterMemberPath)
 {
 }
示例#29
0
        private static void RemoveAggregateFunction(AggregateDefinition aggregateDefinition, GridViewColumn gridColumn, IColumnItem columnItem)
        {
            if (aggregateDefinition == null ||
                gridColumn == null ||
                columnItem == null)
            {
                return;
            }

            var function = gridColumn.AggregateFunctions.FirstOrDefault(x => x.FunctionName == aggregateDefinition.FunctionName);
            if (function != null)
                gridColumn.AggregateFunctions.Remove(function);

            columnItem.AggregateCriteriaList.Remove(aggregateDefinition);
        }
示例#30
0
        private void InitListView()
        {
            //Client
            GridView gv = new GridView();

            GridViewColumn       gvc  = new GridViewColumn();
            GridViewColumnHeader gvch = new GridViewColumnHeader();

            gvch.Content             = "Host";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Endpoint");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "ModuleNumber";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("ModuleNumber");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Name";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Name");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Connecting Time";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("ConnTime");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Protocol";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Protocol");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Expiration";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Expiration");
            gv.Columns.Add(gvc);

            LvClient.View = gv;

            //License Pool
            gv = new GridView();

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Name";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Name");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Expiration";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Expiration");
            gv.Columns.Add(gvc);

            LvLicensePool.View = gv;

            //Softdog
            gv = new GridView();

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "";
            gvc.Header               = gvch;
            gvc.Width                = 30;
            gvc.DisplayMemberBinding = new Binding("CurTag");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "SerialNumber";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("SerialNumber");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Type";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Type");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Master";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Master");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Periods";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Periods");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Expiration";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Expiration");
            gv.Columns.Add(gvc);

            LvSoftDog.View = gv;

            //License Server
            gv = new GridView();

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Host";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Host");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Port";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Port");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "ModuleNumber";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("ModuleNumber");
            gv.Columns.Add(gvc);

            LvLicenseServer.View = gv;

            //Preoperty
            gv = new GridView();

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Name";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("Name");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "SerialNo";
            gvc.Header               = gvch;
            gvc.Width                = 150;
            gvc.DisplayMemberBinding = new Binding("SerialNo");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Type";
            gvc.Header               = gvch;
            gvc.Width                = 80;
            gvc.DisplayMemberBinding = new Binding("LicType");
            gv.Columns.Add(gvc);

            gvc          = new GridViewColumn();
            gvch         = new GridViewColumnHeader();
            gvch.Content = "Value";
            gvc.Header   = gvch;
            gvc.Width    = 150;
            //gvc.DisplayMemberBinding = new Binding("Value");
            var dt = Resources["CellLicValueTemplate"] as DataTemplate;

            if (dt != null)
            {
                gvc.CellTemplate = dt;
            }
            else
            {
                gvc.DisplayMemberBinding = new Binding("Value");
            }
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "Expiration";
            gvc.Header               = gvch;
            gvc.Width                = 250;
            gvc.DisplayMemberBinding = new Binding("Expiration");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "MajorID";
            gvc.Header               = gvch;
            gvc.Width                = 80;
            gvc.DisplayMemberBinding = new Binding("MajorID");
            gv.Columns.Add(gvc);

            gvc                      = new GridViewColumn();
            gvch                     = new GridViewColumnHeader();
            gvch.Content             = "MinorID";
            gvc.Header               = gvch;
            gvc.Width                = 80;
            gvc.DisplayMemberBinding = new Binding("MinorID");
            gv.Columns.Add(gvc);

            LvProperty.View = gv;
        }