Пример #1
0
		private void InitializeSourceGrid_Trust() {
			__cTextAlignView = new SourceGrid.Cells.Views.Cell();
			__cTextAlignView.TextAlignment = DevAge.Drawing.ContentAlignment.TopRight;
			
			this.dataGrid_Trust.Rows.RowHeight = 21;  //處理第一列中文字體會被遮住的問題
			this.dataGrid_Trust.Columns.Add("Ticket", "序號", typeof(string));
			this.dataGrid_Trust.Columns.Add("Category", "委託別", typeof(string));
			this.dataGrid_Trust.Columns.Add("SymbolId", "商品代號", typeof(string));
			this.dataGrid_Trust.Columns.Add("Action", "買/賣", typeof(string));
			this.dataGrid_Trust.Columns.Add("Contracts", "數量", typeof(int));
			this.dataGrid_Trust.Columns.Add("Price", "價格", typeof(double));
			this.dataGrid_Trust.Columns.Add("Time", "時間", typeof(string));
			this.dataGrid_Trust.Columns.Add("Comment", "描述", typeof(string));
			this.dataGrid_Trust.Columns[0].Width = 60;
			this.dataGrid_Trust.Columns[1].Width = 60;
			this.dataGrid_Trust.Columns[2].Width = 80;
			this.dataGrid_Trust.Columns[3].Width = 70;
			this.dataGrid_Trust.Columns[4].Width = 60;
			this.dataGrid_Trust.Columns[4].DataCell.View = __cTextAlignView;
			this.dataGrid_Trust.Columns[5].Width = 60;
			this.dataGrid_Trust.Columns[5].DataCell.View = __cTextAlignView;
			this.dataGrid_Trust.Columns[6].Width = 110;
			this.dataGrid_Trust.Columns[7].Width = 200;

			//修改選擇條的框線寬度與顏色
			SourceGrid.Selection.SelectionBase cSelectionBase = this.dataGrid_Trust.Selection as SourceGrid.Selection.SelectionBase;
			cSelectionBase.Border = new DevAge.Drawing.RectangleBorder(new DevAge.Drawing.BorderLine(cSelectionBase.BackColor, 1));

			this.dataGrid_Trust.DataSource = __cTradeService.Trusts;
		}
        private void InitializeSourceGrid_Trust()
        {
            __cTextAlignView = new SourceGrid.Cells.Views.Cell();
            __cTextAlignView.TextAlignment = DevAge.Drawing.ContentAlignment.TopRight;

            this.dataGrid_Trust.Rows.RowHeight = 21;              //處理第一列中文字體會被遮住的問題
            this.dataGrid_Trust.Columns.Add("Ticket", "序號", typeof(string));
            this.dataGrid_Trust.Columns.Add("Category", "委託別", typeof(string));
            this.dataGrid_Trust.Columns.Add("SymbolId", "商品代號", typeof(string));
            this.dataGrid_Trust.Columns.Add("Action", "買/賣", typeof(string));
            this.dataGrid_Trust.Columns.Add("Contracts", "數量", typeof(int));
            this.dataGrid_Trust.Columns.Add("Price", "價格", typeof(double));
            this.dataGrid_Trust.Columns.Add("Time", "時間", typeof(string));
            this.dataGrid_Trust.Columns.Add("Comment", "描述", typeof(string));
            this.dataGrid_Trust.Columns[0].Width         = 60;
            this.dataGrid_Trust.Columns[1].Width         = 60;
            this.dataGrid_Trust.Columns[2].Width         = 80;
            this.dataGrid_Trust.Columns[3].Width         = 70;
            this.dataGrid_Trust.Columns[4].Width         = 60;
            this.dataGrid_Trust.Columns[4].DataCell.View = __cTextAlignView;
            this.dataGrid_Trust.Columns[5].Width         = 60;
            this.dataGrid_Trust.Columns[5].DataCell.View = __cTextAlignView;
            this.dataGrid_Trust.Columns[6].Width         = 110;
            this.dataGrid_Trust.Columns[7].Width         = 200;

            //修改選擇條的框線寬度與顏色
            SourceGrid.Selection.SelectionBase cSelectionBase = this.dataGrid_Trust.Selection as SourceGrid.Selection.SelectionBase;
            cSelectionBase.Border = new DevAge.Drawing.RectangleBorder(new DevAge.Drawing.BorderLine(cSelectionBase.BackColor, 1));

            this.dataGrid_Trust.DataSource = __cTradeService.Trusts;
        }
Пример #3
0
        public static SourceGrid.Conditions.ICondition AlternateView(
            SourceGrid.Cells.Views.IView view,
            System.Drawing.Color alternateBackcolor,
            System.Drawing.Color alternateForecolor)
        {
            SourceGrid.Cells.Views.IView viewAlternate = (SourceGrid.Cells.Views.IView)view.Clone();
            viewAlternate.BackColor = alternateBackcolor;
            viewAlternate.ForeColor = alternateForecolor;

            SourceGrid.Conditions.ConditionView condition =
                new SourceGrid.Conditions.ConditionView(viewAlternate);

            condition.EvaluateFunction = delegate(SourceGrid.DataGridColumn column, int gridRow, object itemRow)
            {
                return((gridRow & 1) == 1);
            };

            return(condition);
        }
Пример #4
0
 public ConditionView(SourceGrid.Cells.Views.IView view)
 {
     mView = view;
 }
Пример #5
0
        private void LoadCategorySample(string category, SourceGrid.Cells.Controllers.Button linkEvents, Type[] assemblyTypes, SourceGrid.Cells.Views.IView categoryView, SourceGrid.Cells.Views.IView headerView)
        {
            int row;

            //Create Category Row
            row = grid1.RowsCount;
            grid1.Rows.Insert(row);
            grid1[row, 0]            = new SourceGrid.Cells.Cell(category);
            grid1[row, 0].View       = categoryView;
            grid1[row, 0].ColumnSpan = grid1.ColumnsCount;

            //Create Headers
            row = grid1.RowsCount;
            grid1.Rows.Insert(row);

            SourceGrid.Cells.ColumnHeader header1 = new SourceGrid.Cells.ColumnHeader("Sample N?");
            header1.View = headerView;
            header1.AutomaticSortEnabled = false;
            grid1[row, 0] = header1;

            SourceGrid.Cells.ColumnHeader header2 = new SourceGrid.Cells.ColumnHeader("Description");
            header2.View = headerView;
            header2.AutomaticSortEnabled = false;
            grid1[row, 1] = header2;

            //Create Data Cells
            for (int i = 0; i < assemblyTypes.Length; i++)
            {
                object[] attributes = assemblyTypes[i].GetCustomAttributes(typeof(SampleAttribute), true);
                if (attributes != null && attributes.Length > 0)
                {
                    SampleAttribute sampleAttribute = (SampleAttribute)attributes[0];

                    if (sampleAttribute.Category == category)
                    {
                        row = grid1.RowsCount;
                        grid1.Rows.Insert(row);
                        grid1[row, 0]      = new SourceGrid.Cells.Cell(sampleAttribute.SampleNumber);
                        grid1[row, 0].View = new SourceGrid.Cells.Views.Cell();
                        grid1[row, 0].View.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleCenter;

                        //Create a cell with a link
                        grid1[row, 1]     = new SourceGrid.Cells.Link(sampleAttribute.Description);
                        grid1[row, 1].Tag = assemblyTypes[i];
                        grid1[row, 1].Controller.AddController(linkEvents);
                    }
                }
            }

            //Enable sorting of the category range
            SourceGrid.RangeLoader headerRange = new SourceGrid.RangeLoader(new SourceGrid.Range(header1.Range.Start.Row, 0, header1.Range.Start.Row, 1));
            SourceGrid.RangeLoader rangeToSort = new SourceGrid.RangeLoader(new SourceGrid.Range(header1.Range.Start.Row + 1, 0, row, 1));
            SourceGrid.Cells.Controllers.SortableHeader sortableController = new SourceGrid.Cells.Controllers.SortableHeader(rangeToSort, headerRange);

            header1.AddController(sortableController);
            header1.Sort(true);
            header2.AddController(sortableController);
        }
Пример #6
0
        public RuleGrid()
        {
            SpecialKeys = GridSpecialKeys.None | GridSpecialKeys.Enter | GridSpecialKeys.Escape | GridSpecialKeys.PageDownUp;
            SelectionMode = SourceGrid.GridSelectionMode.Row;
            BackColor = System.Drawing.SystemColors.Window;
            BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
            // padding-right = 4 for ellipse text drag-select

            ColumnsCount = 5;
            RowsCount = 1;
            FixedRows = 1;

            // Initialise custom editors
            emptyEditor = new EditorBase(typeof(int));
            emptyEditor.EnableEdit = false;

            readOnlyEditor = new EditorBase(typeof(String));
            readOnlyEditor.EnableEdit = false;

            //ruleTypeEditor = new SourceGrid.Cells.Editors.ComboBox(typeof(string));
            //ruleTypeEditor.StandardValues = new string[] { "Delete", "Copy", "Replace" };
            //ruleTypeEditor.EditableMode = SourceGrid.EditableMode.Focus | SourceGrid.EditableMode.SingleClick;
            //ruleTypeEditor.Control.DropDownStyle = ComboBoxStyle.DropDownList;

            emptyGray = new SourceGrid.Cells.Views.Cell();
            emptyGray.BackColor = System.Drawing.SystemColors.ControlDark;

            popMenu = new PopupMenu(this);

            //Header
            this[0, ColControl] = new SourceGrid.Cells.ColumnHeader(Textual.Enabled);
            this[0, ColType] = new SourceGrid.Cells.ColumnHeader(Textual.RuleType);
            this[0, ColDestination] = new SourceGrid.Cells.ColumnHeader(Textual.DestinationTag + "(?)");
            this[0, ColReplacement] = new SourceGrid.Cells.ColumnHeader(Textual.ReplacementText);
            this[0, ColPattern] = new SourceGrid.Cells.ColumnHeader(Textual.SearchPatterns);

            this.Columns[ColControl].AutoSizeMode = SourceGrid.AutoSizeMode.EnableAutoSize;
            this.Columns[ColType].AutoSizeMode = SourceGrid.AutoSizeMode.EnableAutoSize;
            this.Columns[ColDestination].AutoSizeMode = SourceGrid.AutoSizeMode.EnableAutoSize;
            this.Columns[ColReplacement].AutoSizeMode = SourceGrid.AutoSizeMode.EnableAutoSize;
            this.Columns[ColPattern].AutoSizeMode = SourceGrid.AutoSizeMode.Default | SourceGrid.AutoSizeMode.MinimumSize;

            this.Columns[ColPattern].MinimalWidth = 800;

            this.AutoStretchColumnsToFitWidth = true;
            //Columns.AutoSize(true);
            //ScrollBar = ScrollBars.Vertical;
            //this.VScroll = true;
            //this.SetVScrollBarVisible(true);

            this[0, ColDestination].ToolTipText = Textual.DestinationTagTooltip;
            SourceGrid.Cells.Controllers.ToolTipText toolTipController = new SourceGrid.Cells.Controllers.ToolTipText();
            toolTipController.IsBalloon = true;
            this[0, ColDestination].Controller.AddController(toolTipController);

            foreach(int i in new int[]{ColControl, ColType, ColDestination, ColReplacement, ColPattern})
            {
                this[0, i].RemoveController(this[0, i].FindController(typeof(SourceGrid.Cells.Controllers.SortableHeader)));
            }

            AutoSizeCells();
        }