当前位置: 首页>>代码示例>>C#>>正文


C# GridVirtual.GetCell方法代码示例

本文整理汇总了C#中GridVirtual.GetCell方法的典型用法代码示例。如果您正苦于以下问题:C# GridVirtual.GetCell方法的具体用法?C# GridVirtual.GetCell怎么用?C# GridVirtual.GetCell使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在GridVirtual的用法示例。


在下文中一共展示了GridVirtual.GetCell方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: grid_MouseDown

		protected virtual void grid_MouseDown(GridVirtual sender, System.Windows.Forms.MouseEventArgs e)
		{
			//verifico che l'eventuale edit sia terminato altrimenti esco
			if (sender.Selection.ActivePosition.IsEmpty() == false)
			{
				CellContext focusCell = new CellContext(sender, sender.Selection.ActivePosition);
				if (focusCell.Cell != null && focusCell.IsEditing())
				{
					if (focusCell.EndEdit(false) == false)
						return;
				}
			}

			//scateno eventi di MouseDown
			Position position = sender.PositionAtPoint( new Point(e.X, e.Y) );
			if (position.IsEmpty() == false)
			{
				Cells.ICellVirtual cellMouseDown = sender.GetCell(position);
				if (cellMouseDown != null)
				{
					sender.ChangeMouseDownCell(position, position);

					//Cell.OnMouseDown
					CellContext cellContext = new CellContext(sender, position, cellMouseDown);
					sender.Controller.OnMouseDown(cellContext, e);
				}
			}
			else
				sender.ChangeMouseDownCell(Position.Empty, Position.Empty);
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:30,代码来源:Grid.cs

示例2: Export

        public virtual void Export(GridVirtual grid, System.IO.TextWriter stream)
        {
            for (int r = 0; r < grid.Rows.Count; r++)
            {
                for (int c = 0; c < grid.Columns.Count; c++)
                {
                    if (c > 0)
                        stream.Write(mFieldSeparator);

                    Cells.ICellVirtual cell = grid.GetCell(r, c);
                    Position pos = new Position(r, c);
                    CellContext context = new CellContext(grid, pos, cell);
                    ExportCSVCell(context, stream);
                }
                stream.Write(mLineSeparator);
            }
        }
开发者ID:wsrf2009,项目名称:KnxUiEditor,代码行数:17,代码来源:CSV.cs

示例3: Export

		public void Export(GridVirtual grid)
		{
			System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(Stream, 
				System.Text.Encoding.UTF8);
			
			//write HTML and BODY
			if ( (Mode & ExportHTMLMode.HTMLAndBody) == ExportHTMLMode.HTMLAndBody)
			{
				writer.WriteStartElement("html");
				writer.WriteStartElement("body");
			}

			writer.WriteStartElement("table");

			writer.WriteAttributeString("cellspacing","0");
			writer.WriteAttributeString("cellpadding","0");

			for (int r = 0; r < grid.Rows.Count; r++)
			{
				writer.WriteStartElement("tr");

				for (int c = 0; c < grid.Columns.Count; c++)
				{
					Cells.ICellVirtual cell = grid.GetCell(r,c);
					Position pos = new Position(r,c);
					CellContext context = new CellContext(grid, pos, cell);
					ExportHTMLCell(context, writer);
				}

				//tr
				writer.WriteEndElement();
			}

			//table
			writer.WriteEndElement();

			//write end HTML and BODY
			if ( (Mode & ExportHTMLMode.HTMLAndBody) == ExportHTMLMode.HTMLAndBody)
			{
				//body
				writer.WriteEndElement();
				//html
				writer.WriteEndElement();
			}

			writer.Flush();
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:47,代码来源:HTML.cs

示例4: Export

        public virtual void Export(GridVirtual grid, System.Drawing.Graphics graphics, 
                                Range rangeToExport, System.Drawing.Point destinationLocation)
        {
            if (rangeToExport.IsEmpty())
                return;

            System.Drawing.Point cellPoint = destinationLocation;

            using (DevAge.Drawing.GraphicsCache graphicsCache = new DevAge.Drawing.GraphicsCache(graphics))
            {
                for (int r = rangeToExport.Start.Row; r <= rangeToExport.End.Row; r++)
                {
                    int rowHeight = grid.Rows.GetHeight(r);

                    for (int c = rangeToExport.Start.Column; c <= rangeToExport.End.Column; c++)
                    {
                        Rectangle cellRectangle;
                        Position pos = new Position(r, c);

                        Size cellSize = new Size(grid.Columns.GetWidth(c), rowHeight);

                        Range range = grid.PositionToCellRange(pos);

                        //support for RowSpan or ColSpan 
                        //Note: for now I draw only the merged cell at the first position 
                        // (this can cause a problem if you export partial range that contains a partial merged cells)
                        if ( range.ColumnsCount > 1 || range.RowsCount > 1)
                        {
                            //Is the first position
                            if (range.Start == pos)
                            {
                                Size rangeSize = grid.RangeToSize(range);

                                cellRectangle = new Rectangle(cellPoint,
                                                              rangeSize);
                            }
                            else
                                cellRectangle = Rectangle.Empty;
                        }
                        else
                        {
                            cellRectangle = new Rectangle(cellPoint, cellSize);
                        }

                        if (cellRectangle.IsEmpty == false)
                        {
                            Cells.ICellVirtual cell = grid.GetCell(pos);
                            CellContext context = new CellContext(grid, pos, cell);
                            ExportCell(context, graphicsCache, cellRectangle);
                        }

                        cellPoint = new Point(cellPoint.X + cellSize.Width, cellPoint.Y);
                    }

                    cellPoint = new Point(destinationLocation.X, cellPoint.Y + rowHeight);
                }
            }
        }
开发者ID:wsrf2009,项目名称:KnxUiEditor,代码行数:58,代码来源:Image.cs

示例5: grid_MouseMove

		protected virtual void grid_MouseMove(GridVirtual sender, System.Windows.Forms.MouseEventArgs e)
		{
			if (e.Button == MouseButtons.Left && sender.Selection.EnableMultiSelection)
			{
                //Scroll if necesary
                sender.ScrollOnPoint(e.Location);



                Position pointPosition = sender.PositionAtPoint(e.Location);
                Cells.ICellVirtual cellPosition = sender.GetCell(pointPosition);

				//Only if there is a FocusCell
				CellContext focusCellContext = new CellContext(sender, sender.Selection.ActivePosition);
				if (focusCellContext.Cell != null && focusCellContext.IsEditing() ==false)
				{
                    Position selCornerPos = pointPosition;
                    Cells.ICellVirtual selCorner = cellPosition;

                    ////If the current Focus Cell is a scrollable cell then search the current cell (under the mouse)only in scrollable cells
                    //// see PositionAtPoint with false parameter
                    //if (sender.GetPositionType(sender.Selection.ActivePosition) == CellPositionType.Scrollable)
                    //{
                    //    selCornerPos = sender.PositionAtPoint(new Point(e.X, e.Y));
                    //    selCorner = sender.GetCell(pointPosition);
                    //}

                    if (selCornerPos.IsEmpty() == false && selCorner != null)
					{
						//Only if the user start the selection with a cell (m_MouseDownCell!=null)
						if (sender.MouseDownPosition.IsEmpty() == false && sender.Selection.IsSelectedCell(sender.MouseDownPosition))
						{
                            sender.ChangeMouseSelectionCorner(selCornerPos);
							//sender.ShowCell(l_SelCornerPos);
						}
					}
				}
			}
		}
开发者ID:wsrf2009,项目名称:KnxUiEditor,代码行数:39,代码来源:MouseSelection.cs

示例6: grid_MouseMove

		protected virtual void grid_MouseMove(GridVirtual sender, System.Windows.Forms.MouseEventArgs e)
		{
			Position l_PointPosition = sender.PositionAtPoint(new Point(e.X, e.Y));
			Cells.ICellVirtual l_CellPosition = sender.GetCell(l_PointPosition);

			//Call MouseMove on the cell that receive tha MouseDown event
			if (sender.MouseDownPosition.IsEmpty() == false)
			{
				Cells.ICellVirtual l_MouseDownCell = sender.GetCell(sender.MouseDownPosition);
				if (l_MouseDownCell!=null)
				{
					sender.Controller.OnMouseMove(new CellContext(sender, sender.MouseDownPosition, l_MouseDownCell), e);
				}
			}
			else //se non ho nessuna cella attualmente che ha ricevuto un mousedown, l'evento di MouseMove viene segnalato sulla cella correntemente sotto il Mouse
			{
				// se non c'è nessuna cella MouseDown cambio la cella corrente sotto il Mouse
#if !MINI
				sender.ChangeMouseCell(l_PointPosition);//in ogni caso cambio la cella corrente
#endif
				if (l_PointPosition.IsEmpty() == false && l_CellPosition != null)
				{
					// I call MouseMove on the current cell only if there aren't any cells under the mouse
					sender.Controller.OnMouseMove(new CellContext(sender, l_PointPosition, l_CellPosition), e);
				}
			}
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:27,代码来源:Grid.cs

示例7: grid_MouseUp

		protected virtual void grid_MouseUp(GridVirtual sender, System.Windows.Forms.MouseEventArgs e)
		{
			if (sender.MouseDownPosition.IsEmpty() == false)
			{
				Cells.ICellVirtual l_MouseDownCell = sender.GetCell(sender.MouseDownPosition);
				if (l_MouseDownCell!=null)
					sender.Controller.OnMouseUp(new CellContext(sender, sender.MouseDownPosition, l_MouseDownCell), e );

				sender.ChangeMouseDownCell(Position.Empty, sender.PositionAtPoint(new Point(e.X, e.Y)));
			}
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:11,代码来源:Grid.cs

示例8: grid_KeyPress

		private void grid_KeyPress(GridVirtual sender, System.Windows.Forms.KeyPressEventArgs e)
		{
			//solo se diverso da tab e da a capo ( e non è un comando di copia/incolla)
			if (sender.Selection.ActivePosition.IsEmpty() || e.KeyChar == '\t' || e.KeyChar == 13 ||
				e.KeyChar == 3 || e.KeyChar == 22 || e.KeyChar == 24)
			{
			}
			else
			{
				Cells.ICellVirtual l_FocusCell = sender.GetCell(sender.Selection.ActivePosition);
				if (l_FocusCell != null)
					sender.Controller.OnKeyPress( new CellContext(sender, sender.Selection.ActivePosition, l_FocusCell), e );
			}
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:14,代码来源:Grid.cs

示例9: grid_KeyUp

		protected virtual void grid_KeyUp(GridVirtual sender, System.Windows.Forms.KeyEventArgs e)
		{
			if (sender.Selection.ActivePosition.IsEmpty() == false)
			{
				Cells.ICellVirtual l_FocusCell = sender.GetCell(sender.Selection.ActivePosition);
				if (l_FocusCell!=null)
					sender.Controller.OnKeyUp(new CellContext(sender, sender.Selection.ActivePosition, l_FocusCell), e );
			}
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:9,代码来源:Grid.cs

示例10: grid_DoubleClick

		protected virtual void grid_DoubleClick(GridVirtual sender, EventArgs e)
		{

			if (sender.MouseDownPosition.IsEmpty() == false)
			{
				Cells.ICellVirtual l_MouseDownCell = sender.GetCell(sender.MouseDownPosition);
				if (l_MouseDownCell!=null)
				{
					sender.Controller.OnDoubleClick(new CellContext(sender, sender.MouseDownPosition, l_MouseDownCell), EventArgs.Empty);
				}
			}
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:12,代码来源:Grid.cs

示例11: grid_Click

		protected virtual void grid_Click(GridVirtual sender, EventArgs e)
		{
			Position clickPosition = sender.PositionAtPoint(sender.PointToClient(Control.MousePosition));
			Position clickStartPosition = sender.PositionToStartPosition(clickPosition);

			//Se ho precedentemente scatenato un MouseDown su una cella 
			// e se questa corrisponde alla cella sotto il puntatore del mouse (non posso usare MouseCellPosition perchè questa viene aggiornata solo quando non si ha una cella come MouseDownPosition
			if (sender.MouseDownPosition.IsEmpty() == false && 
				sender.MouseDownPosition == clickStartPosition /* MouseCellPosition && 
				m_MouseDownCell.Focused == true //tolto altrimenti non funzionava per le celle Selectable==false*/)
			{
				Cells.ICellVirtual mouseDownCell = sender.GetCell(sender.MouseDownPosition);
				if (mouseDownCell != null)
				{
					sender.Controller.OnClick(new CellContext(sender, sender.MouseDownPosition, mouseDownCell), EventArgs.Empty);
				}
			}		
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:18,代码来源:Grid.cs

示例12: grid_GiveFeedback

		protected virtual void grid_GiveFeedback(GridVirtual sender, System.Windows.Forms.GiveFeedbackEventArgs e)
		{
			Position dragPosition = sender.DragCellPosition;
			Cells.ICellVirtual cellPosition = sender.GetCell(dragPosition);

			sender.Controller.OnGiveFeedback(new CellContext(sender, dragPosition, cellPosition), e);
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:7,代码来源:Grid.cs

示例13: grid_DragOver

		protected virtual void grid_DragOver(GridVirtual sender, System.Windows.Forms.DragEventArgs e)
		{
			Position pointPosition = sender.PositionAtPoint(sender.PointToClient( new Point(e.X, e.Y) ));
			Cells.ICellVirtual cellPosition = sender.GetCell(pointPosition);

			CellContext cellContext = new CellContext(sender, pointPosition, cellPosition);
			sender.ChangeDragCell(cellContext, e);
			sender.Controller.OnDragOver(cellContext, e);
		}
开发者ID:Xavinightshade,项目名称:ipsimulator,代码行数:9,代码来源:Grid.cs


注:本文中的GridVirtual.GetCell方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。