SourceGrid An utility class to export a grid to a csv delimited format file. A cell that rappresent a header of a table, with 3D effect. This cell override IsSelectable to false. Default use VisualModels.VisualModelHeader.Style1 Represents a CellVirtual in a grid. Interface to represents a cell virtual (without position or value information). Add the specified controller. Remove the specifed controller Find the specified controller. Returns null if not found. Find the specified controller. Returns null if not found. Create a shallow copy of the current object. Note that this is not a deep clone, all the reference are the same. Use internally MemberwiseClone method. Editor of this cell and others cells. If null no edit is supported. You can share the same model between many cells to optimize memory size. Warning Changing this property can affect many cells Controller of the cell. Represents the actions of a cell. Visual properties of this cell and other cell. You can share the VisualProperties between many cell to optimize memory size. Warning Changing this property can affect many cells Model that contains the data of the cells. Cannot be null. Constructor. Create a CellVirtual using a default NullValueModel. You must provide your custom ValueModel to bind the cell to a value. Constructor. Create a CellVirtual using a default NullValueModel. You must provide your custom ValueModel to bind the cell to a value. Add the specified controller Remove the specifed controller Find the specified controller. Returns null if not found. Find the specified controller. Returns null if not found. Create a shallow copy of the current object. Note that this is not a deep clone, all the reference are the same. Use internally MemberwiseClone method. Represents the model of the cell. Visual properties of this cell and other cell. You can share the VisualProperties between many cell to optimize memory size. Warning Changing this property can affect many cells Controller of the cell. Editor of this cell and others cells. If null no edit is supported. You can share the same model between many cells to optimize memory size. Warning Changing this property can affect many cells Constructor Gets or sets if enable the resize of the height, using a Resizable controller. Default is true. A cell that rappresent a header of a table, with 3D effect. This cell override IsSelectable to false. Default use VisualModels.VisualModelHeader.Style1 Represents a Cell in a grid, with Cell.Value support and row/col span. Support also ToolTipText, ContextMenu and Cursor Represents a Cell to use with Grid control. Link the cell at the specified grid. For internal use only. Remove the link of the cell from the grid. For internal use only. Setting a col/row spann is a costly operation, so it's better if you set these two at the same time. Prefer this method to RowSpan and ColSpan property setters Gets the string representation of the Cell.Value property (default Value.ToString()) Gets or sets the value of the cell Gets or sets additional info for this cell Gets or sets the ToolTipText Gets or set the image of the cell. The Grid object Gets the column of the specified cell Gets the row of the specified cell Gets the range of the cell ColSpan for merge operation, calculated using the current range. RowSpan for merge operation, calculated using the current range. Constructor Constructor Constructor Constructor Link the cell at the specified grid. For internal use only. Remove the link of the cell from the grid. For internal use only. Object to put additional info for this cell ToString method The Grid object Gets the column of the specified cell Gets the row of the specified cell Gets the range of the cell The string representation of the Cell.Value property (default Value.ToString()) Value of the cell Object to put additional info for this cell ColSpan for merge operation RowSpan for merge operation Gets or sets the tool tip text of the cell. Internally use the Models.ToolTip class. Gets or sets the Image associeted with the Cell. Internally use a Models.Image class. Constructor Constructor Gets or sets if enable the resize of the height, using a Resizable controller. Default is true. Represents the base class of a DataModel. This DataModel support conversion but doesn't provide any user interface editor. A string editor that use a TypeConverter for conversion. A base class to support value conversion and validation. This class is used if no conversion is required or as a base class for specialized validator. Naming Legend: Object = an object not yet converted for the current validator, Value = an object already converted and valid for the current validator, String = a string that can be used for conversion to and from Value, DisplayString = a string representation of the Value A IComponent implementation, used as a base class for component derived class. It is similar to the System Component class but doesn't derive from MarshalByRef class, for this reason it is faster and consume less resources. Can be serialized. Default constructor Copy constructor An interface to support value conversion and validation. Naming Legend: Object = an object not yet converted for the current validator, Value = an object already converted and valid for the current validator, String = a string that can be used for conversion to and from Value, DisplayString = a string representation of the Value Returns true if the string is null or if is equals to the NullString Convert an object according to the current ValueType of the validator Convert a value valid for the current validator ValueType to an object with the Type specified. Throw an exception on error. Convert a value valid for the current validator ValueType to a string that can be used for other conversions, for example StringToValue method. Converts a string to an object according to the type of the string editor Returns true if string conversion is suported. AllowStringConversion must be true and the current Validator must support string conversion. Converts a value valid for this validator valuetype to a string representation. The string cannot be used for conversion. If the validator support string conversion this method simply call ValueToString otherwise call Value.ToString() Returns true if the value is valid for this type of editor without any conversion. Returns true if the object is valid for this type of validator, using conversion functions. Returns true if the object is valid for this type of validator, using conversion functions. Returns as parameter the value converted. Returns true if the string is valid for this type of editor, using string conversion function. Returns true if the string is valid for this type of editor, using string conversion function. An returns the object converted. Returns true if the value specified is presents in the list StandardValues. Returns the standard values at the specified index. If StandardValues support IList use simple the indexer method otherwise loop troght the collection. Returns the index of the specified standard value. -1 if not found. If StandardValues support IList use simple the indexer method otherwise loop troght the collection. True to allow null object value or NullString string Value Null string representation. A string is null when is null or when is equals to this string. Default is empty string. Used by ValueToString and StringToValue Null string representation. A string is null when is null or when is equals to this string. Default is empty string. Used by ValueToDisplayString Gets or Sets if the string conversion is allowed. Minimum value allowed. If null no check is performed. The value must derive from IComparable interface to use Minimum or Maximum feature. Maximum value allowed. If null no check is performed. The value must derive from IComparable interface to use Minimum or Maximum feature. Type allowed for the current editor. Cannot be null. Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a value to a display string. Called from method ValueToDisplayString Default value for this editor, usually is the default value for the specified type. A list of values that this editor can support. If StandardValuesExclusive is true then the editor can only support one of these values. If StandardValuesExclusive is true then the editor can only support the list specified in StandardValues. Culture for conversion. If null the default user culture is used. Default is null. Fired when one of the properties of the Validator change. Constructor. Initialize the class using a null type. Constructor. The type used to validate the values. If null no validation is made. Returns true if the string is null or if is equals to the NullString Returns a string used for error description for a specified object. Usually used when printing the object for the error message when there is a conversion error. Convert an object according to the current ValueType of the validator Convert a value according to the current ValueType to an object with the Type specified. Throw an exception on error. Converts a value object to a string representation Converts a string to an object according to the type of the string editor Returns true if string conversion is suported. AllowStringConversion must be true and the current Validator must support string conversion. Converts a value valid for this validator valuetype to a string representation. The string cannot be used for conversion. If the validator support string conversion this method simply call ValueToString otherwise call Value.ToString() Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a value to a display string. Called from method ValueToDisplayString Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a value to a display string. Called from method ValueToDisplayString Returns true if the value is valid for this type of editor without any conversion. Returns true if the object is valid for this type of validator, using conversion functions. Returns true if the object is valid for this type of validator, using conversion functions. Returns as parameter the value converted. Returns true if the string is valid for this type of editor, using string conversion function. Returns true if the string is valid for this type of editor, using string conversion function. Returns as out parameter the object converted. Returns true if the value specified is presents in the list StandardValues. Returns the standard values at the specified index. If StandardValues support IList use simple the indexer method otherwise loop troght the collection. Returns the index of the specified standard value. -1 if not found. If StandardValues support IList use simple the indexer method otherwise loop troght the collection. Fired when one of the properties of the Validator change. Call the Changed event. True to allow null object value or NullString string Value Null string representation. A string is null when is null or when is equals to this string. Default is empty string. Used by ValueToString and StringToValue Null string representation. Default is empty string. Used by ValueToDisplayString Gets or Sets if the string conversion is allowed. Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a value to a display string. Called from method ValueToDisplayString Minimum value allowed. If null no check is performed. The value must derive from IComparable interface to use Minimum or Maximum feature. Maximum value allowed. If null no check is performed. The value must derive from IComparable interface to use Minimum or Maximum feature. Type allowed for the current editor. Cannot be null. Set the ValueType property using a string value, usually used by designer code generation. The designer for this type is configured to use only this property. Default value for this editor, usually is the default value for the specified type. A list of values that this editor can support. If StandardValuesExclusive is true then the editor can only support one of these values. If StandardValuesExclusive is true then the editor can only support the list specified in StandardValues. Culture for conversion. If null the default user culture is used. Default is null. Fired when one of the properties of the Validator change. Constructor. Initialize the Validator with a null TypeConverter. Constructor. If the Type doesn't implements a TypeConverter no conversion is made. Constructor Cannot be null. Can be null to don't allow any conversion. Returns true if string conversion is suported. AllowStringConversion must be true and the current Validator must support string conversion. Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject Fired when converting a object to the value specified. Called from method ObjectToValue and IsValidObject TypeConverter used for this type editor, cannot be null. Construct a Model. Based on the Type specified the constructor populate StringEditor property The type of this model Set the current editing cell, for an editor only one cell can be in editing state Error rappresentation Returns true if the string passed is equal to the error string rappresentation Start editing the cell passed. Do not call this method for start editing a cell, you must use CellContext.StartEdit. Cell to start edit Apply edited value Cancel the edit action. Do not call this method directly, use the CellContext.EndEdit instead. True to cancel the editing and return to normal mode, false to call automatically ApplyEdit and terminate editing Returns true if the cell terminate the editing mode Returns the new value edited with the custom control Clear the value of the cell using the default value Change the value of the cell applying the rule of the current editor. Is recommend to use this method to simulate a edit operation and to validate the cell value using the current model. Doesn't call the StartEdit and EndEdit but change directly the cell value. Use the CellContext.Start edit to begin an edit operation. Cell to change the value returns true if the value passed is valid and has been applied to the cell Functions used when the validating operation is finished Validating the value of the cell. Event fired when an exception is throw in the Validated event or in an editing method Used to send some keyboard keys to the active editor. It is only valid when there is an active edit operations. Calculate the minimum required size for the specified editor cell. Cell in editing, if null no cell is in editing state Cell in editing, if null no cell is in editing state Cell in editing, if Empty no cell is in editing state String used when error occurred Enable or disable the cell editor (if disable no visual edit is allowed) Mode to edit the cell. Indicates if the draw of the cell when in editing mode is enabled. Gets or sets if the editor must assign to the editor control the default view properties: ForeColor, BackColor, Font. This can be disabled if you want to manually assign these properties to the control. Indicates if the current editor is in editing state Validating event Validated event Event fired when an exception is throw in the Validated event or in an editing method Implementation RichTextBox behavior Implements all the method of the controller interface without any implementation Represents a behavior of a cell. Process MouseDoubleClick event. See http://msdn.microsoft.com/lt-lt/library/system.windows.forms.control.mousedoubleclick(en-us,VS.80).aspx Handles OnMouseClick event. See http://msdn.microsoft.com/lt-lt/library/system.windows.forms.control.mouseclick(en-us,VS.80).aspx Fired before the cell leave the focus, you can put the e.Cancel = true to cancel the leave operation. Fired when the cell has left the focus. Fired when the focus is entering in the specified cell. You can put the e.Cancel = true to cancel the focus operation. Fired when the focus enter in the specified cell. Fired before the value of the cell is changed. Fired after the value of the cell is changed. Fired when the StartEdit is called and before the cell start the edit operation. You can set the Cancel = true to stop editing. Fired when the StartEdit is sucesfully called. Fired when the EndEdit is called. You can read the Cancel property to determine if the edit is completed. If you change the cancel property there is no effect. Returns true if the current cell can receive the focus. If only one behavior return false the return value is false. Fired before the value of the cell is changed. Fired after the value of the cell is changed. Default behavior RichTextBox Constructor If ValueEventArgs is a font, use it to change SelectionFont If String, assign it as rtf If Int32, assign it as offset If HorizontalAlignment, assign as SelectionAlignment Summary description for PlanningGrid. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Load the grid using the parameters specified The grid used internally to display the planning (note that you usually don't need to access directly this class). A cell that rappresent a header of a table, with 3D effect. This cell override IsSelectable to false. Default use VisualModels.VisualModelHeader.Style1 Constructor Constructor A collection of elements of type IAppointment Interface for defining a Field in the FixedLength string Convert the specified value to a string value valid for this field Convert the specified string value to a value based on the field format. Index of the field. 0 based. Name of the field, used for retriving the field by its name. Class for define a field, implements IField interface. An interface to represents a basic activity. Start the activity and all sub activities. Interface class that receive the events, can be null if no event class is needed. Cancel the current activity and all sub activities throwing a ActivityCanceledException. Subordinated activities. Are executed after the current activity. If one of these activity throws an exception is propagated to parent activity and the operation is stopped. Note that the sub activities can be async and so can be executed in a parellel mode. Activity status Name of the activity used to describe the class. Gets the WaitHandle class used to wait for the completition of the activity. Gets the exception throwed when the activity fail. Null if no exception. Gets or sets the Activity parent. Null when it is a root activity. Do not set manually the parent activity, but simply add the activity to the SubActivities collection. Gets the activity full name of the activity, composed by the full name of the parent activity separated with a \ character Don't wait the sub activities to finish (parallel processing, asyncronous) Wait for each sub activities (syncronous) Wait all the sub activities at the end (parallel processing but syncronized with the parent) Base activity class. Override the OnWork method to customize the activity. An activity count used only to generate a seguential name Initially set to signaled=true=completed, nonsignaled=false=notcompleted, Constructor Reset the status property to the original values. If the activity is still running an exception is throw. Working method. Abstract. Override this method to provide a specific work for the activity. Internal work method. Call the OnWork method and Start the SubActivities. Wait until or SubActivities are completed. Throw an exception on timeout. Wait until or SubActivities are completed. Throw an exception on timeout. Throw an exception if one of the activities has an exception. Throw an exception if one of the activities has an exception. Start the activity. NOTE: Usually don't override this method but override the OnWork method to implement the specific activity work. Start the activity. If the activity is already running an exception is throw. To override the common working code use the OnWork abstract method. Interface class that receive the events, can be null if no event class is needed. Cancel the current activity and all sub activities throwing a ActivityCanceledException. Gets or sets the time to wait for the sub activities. If the operation is still executing then a TimeOutException is fired. Default is System.Threading.Timeout.Infinite. Default is true. Gets or sets if propagate an exception from sub activities to the current activities. Default is true. Only valid SubActivitiesTimeOut is WaitOnEach or WaitAtTheEnd Gets or sets how the current activity wait the completition of the sub activities. Subordinated activities. Are executed after the current activity. If one of these activity throws an exception is propagated to parent activity and the operation is stopped. Note that the sub activities can be async and so can be executed in a parellel mode. Activity status Name of the activity used to describe the class. Gets the WaitHandle class used to wait for the completition of the activity. Gets the exception throwed when the activity fail. Null if no exception. Gets or sets the Activity parent. Null when it is a root activity. Do not set manually the parent activity, but simply add the activity to the SubActivities collection. Gets the activity full name of the activity, composed by the full name of the parent activity separated with a \ character An activity used as a container for other activities using a syncronized code. An activity used as a container for other activities using an asynchronous code. Override the OnAsyncWork method for custom asynchronous work. Base activity class. Override the OnBeginWork and OnEndWork method to customize the activity. This class support an asyncronous activity. Begind working method. Called to start the asyncronous activity. Abstract. End working method. Called when the asyncronous operation is finished AsyncResult Working method. Start the activity. NOTE: Usually don't override this method but override the OnBeginWork method to implement the specific activity work. A static class used to serialize a DataSet to and from a stream using a binary or xml format. The xml format use the standard DataSet xml serialization, the binary format use a custom format. Write the dataset to the stream using the specified format. Read from the stream and populate the dataset using the specified format. True to merge the schema, otherwise it is used the schema of the dataset Enum to control the serialization format Standard xml format used by the ReadXml and WriteXml of the DataSet Custom binary format. More compact of the xml but not human readable Binary data not valid exception Generic DevAge Exception Constructor Constructor Constructor Constructor Constructor Version not valid exception Constructor Constructor A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. Default interface for RichText implementations Interface for all the VisualElements classes. Inherits from IClonable. Support a deep clone. Gets the area where the visual element will be drawed. Measure the current VisualElement using the specified settings. If Empty is not used. If Empty is not used. Draw the current VisualElement in the specified Graphics object. Draw the current VisualElement in the specified Graphics object. Get the element at the specified point. Usually this methods simply return the current element, but an element can return inner elements drawed inside the main elements. Returns a list of elements, where the last element is the upper element and the first element is the background element. Gets or sets the area where the content must be drawed. You can set to align the content to the left, right, top or bottom using the relative properties (Left, Right, Top, Bottom). You can also set more than one properties to allign the content to more than one side. Text of format RichText ForeColor of text Text Alignment. Text Font Rotate flip type VisualElement abstract base class. You must override the OnDraw, OnMeasureContent and Clone. Default constructor Copy constructor Measure the current VisualElement using the specified settings. If Empty is not used. If Empty is not used. Measure the current content of the VisualElement. If empty is not used. Draw the current VisualElement in the specified Graphics object. Draw the current VisualElement in the specified Graphics object. Usually derived class don't override this method but the OnDraw method that automatically check the area to draw. Gets the area where the visual element will be drawed. Method used to draw the specified content based on the Visual element. This is the method that you must override to draw. The area used is already calculated based on the AnchorArea property. Get the element at the specified point. Usually this methods simply return the current element, but an element can return inner elements drawed inside the main elements. Returns a list of elements, where the last element is the upper element and the first element is the background element. Clone the current VisualElement. Gets or sets the area where the content must be drawed. You can set to align the content to the left, right, top or bottom using the relative properties (Left, Right, Top, Bottom). You can also set more than one properties to allign the content to more than one side. Default constructor Constructor Copy constructor. Text Alignment Text Font Rotate flip type Measure the current content of the VisualElement. If empty is not used. Clone Gets or sets the string of format rich text to draw. Default is null. Gets or sets the fore color of the content. System.Windows.Forms.Control.DefaultForeColor The background visualelement can be used as a background for a container element. Override the OnDraw, GetBackgroundContentRectangle and GetBackgroundExtent to draw a custom background. Default constructor Copy constructor Calculate the client area where the content can be drawed, usually removing the area used by the background, for example removing a border. Calculate the total area used by the backgound and the content, adding the background area to the content area. Default constructor Copy constructor Default constructor Copy constructor Clone Calculate the client area where the content can be drawed, usually removing the area used by the background, for example removing a border. Calculate the total area used by the backgound and the content, adding the background area to the content area. Back Color Border Gradient angle used for linear gradient. Draw mode for the header. Default is Linear. An interface that defines and object with a rectangle The main grid control with static data. A abstract Grid control to support large virtual data. You must override: GetCell, CreateRowsObject, CreateColumnsObject A control with a custom implementation of a scrollable area Panel showed on the bottom right of the grid when both scrollbars are visible Internal panel that contains hScrollBar and mBottomRightPanel Invalidate the scrollable area Prepare the scrollbars with the specified dock option. Load the scrollable area that will affect the maximum scroll values. recalculate the position of the horizontal scrollbar Recalculate the position of the vertical scrollbar Recalculate the scrollbars position and size. Use this to refresh scroll bars Calculate the number of rows to scroll. 0 to disable the scrollbar. The returned value is independent from the current scrolling position, must be a fixed value calculated based on the total number of rows and the available area. Calculate the number of columns to scroll. 0 to disable the scrollbar. The returned value is independent from the current scrolling position, must be a fixed value calculated based on the total number of columns and the available area. OnLayout Method Fired when the scroll vertical posizion change Fired when the scroll horizontal posizion change Scroll the page down Scroll the page down to line Scroll the page down to line Scroll the page up Scroll the page right Scroll the page left Scroll the page down one line Scroll the page up one line Scroll the page right one line Scroll the page left one line I disabled the default AutoScroll property because I have a custom implementation Gets the vertical scrollbar. Can be visible or unvisible. Gets the horizontal scrollbar. Can be visible or unvisible. Gets the panel at the bottom right of the control. This panel is valid only if HScrollBar and VScrollBar are valid. Otherwise is null. Gets or sets the current scroll position relative to the CustomScrollArea. The value must be always between 0 and CustomScrollArea (0 or positive). Display rectangle of the control, without ScrollBars. Note: I don't override this method because I use some dock feature that require the real display rectangle. Return the maximum position that can be scrolled Return the minimum position that can be scrolled Return the minimum position that can be scrolled Return the maximum position that can be scrolled Fired when the scroll vertical posizion change Fired when the scroll horizontal posizion change Grid constructor Abstract method used to create the rows object. Abstract method used to create the columns object. Clean up any resources being used. Auto size the columns and the rows speified Auto size all the columns and all the rows with the required width and height Check if the positions saved are still valid, for example if all the selected cells are still valid positions, if not the selection are removed without calling any other methods. Get the rectangle of the cell respect to the client area visible, the grid DisplayRectangle. Returns Rectangle.Empty if the Position is empty or if is not valid. Returns the cell at the specified grid view relative point (the point must be relative to the grid display region), SearchInFixedCells = true. Return Position.Empty if no valid cells are found. Point relative to the DisplayRectangle area. Returns the relative rectangle to the current scrollable area of the specified Range. Returns a Rectangle.Empty if the Range is not valid. Get the range of cells at the specified dispaly area. This method consider only the visible cells using the current scroll position. Returns a single Range for the specified grid area (scrollable, fixedtop, fixedleft, fixedtopleft). Returns Range.Empty if there isn't a valid range in the specified area. Get the visible ranges. Returns a list of Range, one for each area. Calculate the number of rows to scroll. 0 to disable the scrollbar. The returned value is independent from the current scrolling position, must be a fixed value calculated based on the total number of rows and the available area. Calculate the number of columns to scroll. 0 to disable the scrollbar. The returned value is independent from the current scrolling position, must be a fixed value calculated based on the total number of columns and the available area. Indicates if the specified cell is visible. True to returns also partial visible cells Return the scroll position that must be set to show a specific cell. True to consider also partial visible cells Return false if the cell is already visible, return true is the cell is not currently visible. Scroll the view to show the cell passed. Ensure that if the cell if invisible or partial visible it will be totally visible true to ignore and consider already visible partial visible cells Returns true if the Cell passed was already visible, otherwise false Force a cell to redraw. Force a range of cells to redraw. Returns a visible area range, which is a bit expanded to the left and top Move the scrollbars to the direction specified by the point specified. Method used by the Mouse multi selection (MouseSelection.cs). Scroll the grid only if the specified location is outside the visible area. Invalidate the cells This method converts a Position to the real range of the cell. This is usefull when RowSpan or ColumnSpan is greater than 1. For example suppose to have at grid[0,0] a cell with ColumnSpan equal to 2. If you call this method with the position 0,0 returns 0,0-0,1 and if you call this method with 0,1 return again 0,0-0,1. This method converts a Position to the real start position of cell. This is usefull when RowSpan or ColumnSPan is greater than 1. For example suppose to have at grid[0,0] a cell with ColumnSpan equal to 2. If you call this method with the position 0,0 returns 0,0 and if you call this method with 0,1 return again 0,0. Get the real position for the specified position. For example when p_Position is a merged cell this method returns the starting position of the merged cells. Usually this method returns the same cell specified as parameter. This method is used for processing arrow keys, to find a valid cell when the focus is in a merged cell. For this class returns always p_Position. This method converts a Position to the real range of the cell. This is usefull when RowSpan or ColumnSpan is greater than 1. For example suppose to have at grid[0,0] a cell with ColumnSpan equal to 2. If you call this method with the position 0,0 returns 0,0-0,1 and if you call this method with 0,1 return again 0,0-0,1. Indica la cella che ha subito l'ultimo evento di DragEnter Fired when the cell in the drag events change. For internal use only. Virtual factory method used to create the SelectionBase derived object. The base method create a different object based on the value of SelectionMode property. Represents the cell that receive the mouse down event Fired when the cell under the mouse change. For internal use only. Change the cell currently under the mouse Fired when the selection eith the mouse is finished Fired when the mouse selection must be canceled. See also MouseSelectionRange. Fired when the mouse selection is succesfully finished. See also MouseSelectionRange. Fired when the mouse selection change. See also MouseSelectionRange. Fired when the mouse selection finish. See also MouseSelectionRange. Fired when the corner of the mouse selection change. For internal use only. Stores the active position when user presses shift Processes a command key. Process Delete, Ctrl+C, Ctrl+V, Up, Down, Left, Right, Tab keys Checks if cut mode is enabled, and copies data into clipaborad Checks if paste mode is enabled and writes data into grid from clipboard Checks if copy mode is enabled and copies data into clipboard Checks if delete is enabled, and clears values from given destination by invoking ClearValues(selRegion) Allow the grid to handle specials keys like Arrows and Tab. See also Grid.SpecialKeys IsInputChar method. Draw the specified Cell Fired when a user scroll with the mouse wheel Remember the active position, when the key was pressed. Events are called in this order: KeyDown KeyPress KeyUp During these three events, the same active position must be kept, regardless of whether it is changed in any of these events http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keydown(VS.80).aspx Set the Focus on the grid with an optional behaviour. If selectFirstCell is true and the FocusStyle is equal to FocusStyle.FocusFirstCellOnEnter then if there isn't a cell selected the first cell of the grid receive became the active cell. Otherwise the focus is not changed. The Default is true. OnHScrollPositionChanged OnVScrollPositionChanged Refresh the linked controls bounds Recalculate the scrollbar position and value based on the current cells, scroll client area, linked controls and more. If redraw == false this method has not effect. Force to recalculate scrollbars and panels location. Used usually after changing width and height of the columns / rows, or after adding or removing rows and columns. Sort a range of the grid Range to sort Index of the column relative to the grid to use as sort keys, must be between start and end col of the range Ascending true, Descending false CellComparer, if null the default comparer will be used Sort a range of the grid. Index of the column relative to the grid to use as sort keys, must be between start and end col Ascending true, Descending false CellComparer, if null the default ValueCellComparer comparer will be used Fired when calling SortRangeRows method Fired after calling SortRangeRows method Return the Cell at the specified Row and Col position. Abstract, must be implemented in the derived class. Return the Cell at the specified Row and Col position. This method is called for sort operations and for Move operations. If position is Empty return null. This method calls GetCell(int p_iRow, int p_iCol) Returns all the cells at specified row position Returns all the cells at specified column position Returns the type of a cell position Event fired when an exception is throw in some method that require a notification to the user. If not handled by the user (Handled property = false) a MessageBox is used to display the exception. Clear all the selected cells with a valid Model. Indicates the default height of new row Indicates the default width of new column Indicates the minimum height of the rows Indicates the minimum width of the columns True to auto stretch the columns width to always fit the available space, also when the contents of the cell is smaller. False to leave the original width of the columns True to auto stretch the rows height to always fit the available space, also when the contents of the cell is smaller. False to leave the original height of the rows The last cell that has received a DragEnter event. Gets or sets the Selection object that represents the selected cells and the active cell. Use the SelectionMode property to set the type of selection (free, by row, by column). Override the CreateSelectionObject method to create a custom Selection class for special needs. Gets or sets the selection mode. Changing this property cause the Selection object to be recreated, for this reason remember to set this property at the beginning of your code. Represents the cell that have received the MouseDown event. You can use this cell for contextmenu logic. Can be null. The cell position currently under the mouse cursor (row, col). If you MouseDown on a cell this cell is the MouseCellPosition until an MouseUp is fired Returns the cells that are selected with the mouse. Range.Empty if no cells are selected. Consider that this method returns valid cells only during the mouse down operations, when release the mouse the cells are selected and you can read them using Grid.Selection object. True to override with the ProcessCmdKey the common Command Key: Enter, Escape, Tab Special keys that the grid can handle. You can change this enum to block or allow some special keys function. For example to disable Ctrl+C Copy operation remove from this enum the GridSpecialKeys.Ctrl_C. True accepts input char when the grid has the focus. Used for example to start the edit operation without processing the char. If you set this property to false when the character is sended to the windows forms handler and can be used for example to execute directly some access key (shortcut keys). Default is true. List of controls that are linked to a specific cell position. For example is used for editors controls. Key=Control, Value=Position. The controls are automatically removed from the list when they are removed from the Grid.Controls collection Tells if grid has sorting enabled. Note that you can still call manually functions to sort data, such as SortRangeRows, or even sort the data in your own data source. This property is for UI only Fired when calling SortRangeRows method Fired after calling SortRangeRows method Gets or Sets how many rows are not scrollable Gets or Sets how many cols are not scrollable RowsCount informations Columns informations Returns a Range that represents the complete cells of the grid Event fired when an exception is throw in some method that require a notification to the user. Hide the RightToLeft property and returns always No. ToolTip text Gets the tooltip control used when showing tooltip text. Grid decorators, used to draw additiona contents on the drawing surface Gets or sets the clipboard operation mode. Default is none Gets or sets if only active cell should be used for clipboard operation. Default is whole selection Constructor Method used to create the rows object, in this class of type RowInfoCollection. Method used to create the columns object, in this class of type ColumnInfoCollection. Set the specified cell int he specified position. Abstract method of the GridVirtual control Set the specified cell int he specified position. This method calls SetCell(int p_iRow, int p_iCol, Cells.ICellVirtual p_Cell) Return the Cell at the specified Row and Col position. Check if a cell exists in spanned cells. If yes, returns. If no, returns null Remove the specified cell Removes a spanned cell internal reference. This effectively removes any data in spannedCellReferences collection Check except this cell Insert the specified cell Call this method to update internal grid structures. This is used to update QuadTree space at the moment. Set the number of columns and rows This method converts a Position to the real range of the cell. This is usefull when RowSpan or ColumnSpan is greater than 1. This method converts a Position to the real range of the cell. This is usefull when RowSpan or ColumnSpan is greater than 1. For example suppose to have at grid[0,0] a cell with ColumnSpan equal to 2. If you call this method with the position 0,0 returns 0,0-0,1 and if you call this method with 0,1 return again 0,0-0,1. Force a redraw of the specified cell Force a cell to redraw. If ColSpan or RowSpan is greater than 0 this function invalidate the complete range with InvalidateRange List of the ranges already drawn Fired when calling SortRangeRows method. If the range contains all the columns this method move directly the row object otherwise move each cell. Overriden to return a custom accessibility object instance. AccessibleObject for the grid control. Allows to check what spanned cells we have. Do not use this property directly from client code Gets or Sets the number of columns Gets or Sets the number of rows RowsCount informations Columns informations Gets or sets the optimize mode. Default is ForRows Indicates that overlapping cells are not allowed and will be thrown an exception. This is needed due to the fact that when there are two overlapping spanned cells, SourceGrid can not reliably draw them, since the call to function GetCell(x,y) returns random results. However, some users epxressed the need to allow such behaviour. So this flag forces Grid to not check for overlapping cells Returns or set a cell at the specified row and col. If you get a ICell position occupied by a row/col span cell, and EnableRowColSpan is true, this method returns the cell with Row/Col span. Gets the maximum rows or columns number to search when using Row/Col Span. This is a static property. This value is automatically calculated based on the current cells. Do not change this value manually. Default is 100. Gets or sets if when calling SortRangeRows method use a custom sort or an automatic sort. Default = false (automatic) Provides information about the grid control in the acessibility tree. Creates a new GridAccessibleObject Owner Retrieves the accessibility object of a row in the grid. Index of child AccessibleObject of a child element Returns the number of children The number of rows in the grid. Returns the role of the grid control Retrieves the accessible name of the grid control Provides for information about grid rows in the acessibility tree. Creates a new GridRowAccessibleObject The grid row The grid row's parent grid Returns a child cell of the row. Index of child AccessibleObject of a child element Returns the number of children. Number of cells in a row Gets the bounding rectangle in screen coordinates. Returns the name of the grid row. Returns the role of the grid row. Returns the parent grid of the grid row. Provides information about grid cells in the accessibility tree. Creates a new GridRowCellAccessibleObject The grid cell The parent row of the cell Gets the bounding rectange in screen coordinates. Returns the role of the grid cell. Returns the name of the cell. If display text not found, returns a default name containing the column index. Set or get the value of the cell. Returns the parent row of the cell. Column Information Constructor Maximal width of the current Column, -1 if unlimited Minimal width of the current Column Width of the current Column Index of the current Column Attached Grid A property that the user can use to insert custom informations associated to a specific column Flags for autosize and stretch Gets or sets if the column is visible. Internally set the width to 0 to hide a column. Collection of ColumnInfo Abstract base class for manage columns informations. Gets the width of the specified column. Sets the width of the specified column. Autosize column using default auto size mode Autosize column using default auto size mode Measures the current column when drawn with the specified cells. True to fix the row height when measure the column width. Start row to measure End row to measure Returns the required width Auto size all the columns with the max required width of all cells. True to fix the row height when measure the column width. Start row to measure End row to measure stretch the columns width to always fit the available space when the contents of the cell is smaller. Gets the columns index inside the specified display area. Gets the columns index inside the specified display area. The list returned is ordered by the index. Note that this method returns also invisible rows. True to returns also partial columns Calculate the Column that have the Left value smaller or equal than the point p_X, or -1 if not found found. X Coordinate to search for a column Fired when the numbes of columns changed. Gets the column left position. The Left is relative to the specified start position. Calculate the left using also the FixedColumn if present. Gets the column right position. GetLeft + GetWidth. Show a column (set the width to default width) Hide the specified column (set the width to 0) Returns true if the specified column is visible Returns the first visible scrollable column. Return null if there isn't a visible column. Returns the last visible scrollable column. Return null if there isn't a visible column. Constructor Returns true if the range passed is valid Returns true if the range passed is valid for insert method Insert the specified number of Columns at the specified position Remove a column at the speicifed position Remove the ColumnInfo at the specified positions Move a column from one position to another position Change the position of column 1 with column 2. Fired when the number of columns change Fired when some columns are removed Fired before some columns are removed Execute the RowHeightChanged event Auto size the columns calculating the required size only on the rows currently visible Remove all the columns Fired when the number of columns change Fired when some columns are removed Fired before some columns are removed Indexer. Returns a ColumnInfo at the specified position Fired when the user change the Width property of one of the Column Insert a column at the specified position Insert the specified number of Columns at the specified position Row Information Constructor Height of the current row Index of the current row Attached Grid A property that the user can use to insert custom informations associated to a specific row Flags for autosize and stretch Gets or sets if the row is visible. Internally set the height to 0 to hide a row. Model for RichTextBox A generic model interface Set font of selected text. Get font of current selection Set color of selected text. Get char offset of current selection Set char offset of selected text. Get char offset of current selection Set horizontal alignment of selected text. Get horizontal alignment of current selection A cell that contains a HTML style link. Use the click event to execute the link Constructor, using VisualModels.Common.LinkStyle and BehaviorModels.Cursor.Default A cell that contains a HTML style link. Use the click event to execute the link Constructor Constructor using VisualModels.Common.LinkStyle and BehaviorModels.Cursor.Default Summary description for FullColumnSelection. Default controller to select all the column RowFocus controller overrides the OnFocusEntering method and set the Focus on the Row. This controller is usually used on the Row Header. This controller also add an arror Cursor when the mouse is over the cell. Default controller to select all the row Border used to calculate the region to enable the row selection Return the DataColumn object for a given grid column index. Return null if not applicable, for example if the column index requested is a FixedColumns of an unbound column Returns the index for a given DataColumn. -1 if not valid. Exception fired when canceling an activity with the Cancel method. Constructor Exception fired when canceling an activity with the Cancel method. Constructor Exception fired when a time out is encountered. Constructor Exception fired when a time out is encountered. Constructor Summary description for PersistableSettings. Clone all fields using the ValueToString and StringToValue methods Summary description for Line. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Used for subscript and superscript Specifies the style of underline that should be applied to the text. No underlining. Standard underlining across all words. Standard underlining broken between words. Double line underlining. Dotted underlining. Dashed underlining. Dash-dot ("-.-.") underlining. Dash-dot-dot ("-..-..") underlining. Wave underlining (like spelling mistakes in MS Word). Extra thick standard underlining. Extra thin standard underlining. Double thickness wave underlining. Thick wave underlining. Extra long dash underlining. Specifies the color of underline that should be applied to the text. Black. Blue. Cyan. Lime green. Magenta. Red. Yellow. White. DarkBlue. DarkCyan. Green. Dark magenta. Brown. Olive green. Dark gray. Gray. Class which contains a rich text string. Used to distinguish between string and rich text as normally rich text is also a string. Constructor Copy constructor RichText Compare this instance with a specified RichText object. Compare this instance with a specified RichText. Return richtext as string RichText conversion methods Convert plain text to rtf Convert plain text to rtf with font style Convert rtf to plain text A RichTextBox that allows to set the type of value to edit, then you can use the Value property to read and write the specific type. Furthermore, it is possible to format single characters. Set the selection to superscript Set the selection to subscript Set the selection to normal Apply the current Validator rules. This method is automatically fired when the Validator changed. Check if the selected value is valid based on the current validator and returns the value. Maintains performance while updating. It is recommended to call this method before doing any major updates that you do not wish the user to see. Remember to call EndUpdate when you are finished with the update. Nested calls are supported. Calling this method will prevent redrawing. It will also setup the event mask of the underlying richedit control so that no events are sent. Resumes drawing and event handling. This method should be called every time a call is made made to BeginUpdate. It resets the event mask to it's original value and enables redrawing of the control. Append a text with the specified fontstyle to the rich text box plain text to append the fontstyle for the appended text Remove all formatting, optionally with tabs and line breaks true with tabs and line breaks Measure the content of the text box Gets or sets the underline style to apply to the current selection or insertion point. Underline styles can be set to any value of the enumeration. Gets or sets the underline color to apply to the current selection or insertion point. Underline colors can be set to any value of the enumeration. Set the effect of the selected text Gets or sets the Validator class useded to validate the value and convert the text when using the Value property. You can use the ApplyValidatorRules method to apply the settings of the Validator directly to the ComboBox, for example the list of values. Gets or sets the typed value for the control, using the Validator class. If the Validator is null the Text property is used. Returns true when the control is performing some internal updates Summary description for ColorPicker. Summary description for EditableControlBase. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Default constructor Constructor Copy constructor. Measure the current content of the VisualElement. If empty is not used. Clone Gets or sets the Font of the content. Default is System.Windows.Forms.Control.DefaultFont. Gets or sets the fore color of the content. System.Windows.Forms.Control.DefaultForeColor Gets or sets the string to draw. Default is null. Default constructor Constructor Copy constructor Measure the current content of the VisualElement. If empty is not used. Clone Gets or sets the StringFormat object. Encapsulates text layout information (such as alignment, orientation and tab stops) display manipulations (such as ellipsis insertion and national digit substitution) and OpenType features. Gets or sets the alignment of the content. Default constructor Copy constructor Default constructor Copy constructor Interface for all borders. Draw the current VisualElement in the specified Graphics object. Returns the distance of the specified point from the border rectangle. -1 if is not inside the border. Returns a positive value or 0 if inside the border. Consider always the distance from the outer border. Default constructor Copy constructor Draw the current VisualElement in the specified Graphics object. Returns the distance of the specified point from the border rectangle. -1 if is not inside the border. Returns a positive value or 0 if inside the border. Consider always the distance from the outer border. Default constructor Copy constructor Clone Class to manage the visual aspect of a cell. This class can be shared beetween multiple cells. Base abstract class to manage the visual aspect of a cell. This class can be shared beetween multiple cells. The base abstract class for all container VisualElements. Override the GetElements() to get a collection of elements to draw inside the container. Use the Border, Padding and Background properties to customize the container Default constructor Copy constructor Calculate the client area where the content can be drawed, usually removing the area used by the background, for example removing a border. Calculate the total area used by the backgound and the content, adding the background area to the content area. Get the element at the specified point. Usually this methods simply return the current element, but an element can return inner elements drawed inside the main elements. Returns a list of elements, where the last element is the upper (foremost) element and the first element is the background element. Utility function. Calculates the remaining empty area of a specified area and a given content. Utility function. Calculate the required size adding using the anchor informations of the available area. Add the anchor informations to the element content size Gets or sets a property that specify how to draw the elements. The background used to draw A interface that represents the visual aspect of a cell. Contains the Draw method and the common properties Support a deep cloning. Get the font of the cell, check if the current font is null and in this case return the grid font Draw the cell specified Paint arguments Rectangle where draw the current cell Returns the minimum required size of the current cell, calculating using the current DisplayString, Image and Borders informations. SizeF structure that specifies the maximum layout area for the text. If width or height are zero the value is set to a default maximum value. Word Wrap. Text Alignment. The normal border of a cell. Usually it is an instance of a DevAge.Drawing.RectangleBorder structure The BackColor of a cell The ForeColor of a cell A default RectangleBorder instance with a 1 pixed LightGray border on bottom and right side Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Get the font of the cell, check if the current font is null and in this case return the grid font Draw the cell specified Paint arguments Rectangle where draw the current cell Prepare the current View before drawing. Override this method for customize the specials VisualModel that you need to create. Always calls the base PrepareView. Current context. Cell to draw. This property is set before drawing. Only inside the PrepareView you can access this property. Returns the minimum required size of the current cell, calculating using the current DisplayString, Image and Borders informations. SizeF structure that specifies the maximum layout area for the text. If width or height are zero the value is set to a default maximum value. True to stretch the image to all the cell Image Alignment If null the grid font is used ForeColor of the cell Word Wrap, default false. TrimmingMode, default Char. Text Alignment. Returns the color of the Background. If the Background it isn't an instance of BackgroundSolid then returns DefaultBackColor The border of the Cell. Usually it is an instance of the DevAge.Drawing.RectangleBorder structure. The padding of the cell. Usually it is 2 pixel on all sides. Gets or sets a property that specify how to draw the elements. Background of the cell. Usually it is an instance of BackgroundSolid Represents a default Model Use default setting and construct a read and write VisualProperties Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Apply to the VisualElement specified the Image properties of the current View. Derived class can call this method to apply the settings to custom VisualElement. Apply to the VisualElement specified the Image properties of the current View. Derived class can call this method to apply the settings to custom VisualElement. Gets or sets the IText visual element used to draw the cell text. Default is DevAge.Drawing.VisualElements.TextGDI Gets or sets the IImage visual element used to draw the cell image. Default is DevAge.Drawing.VisualElements.Image Represents a default CheckBox with the CheckBox image align to the Middle Center of the cell. You must use this VisualModel with a Cell of type ICellCheckBox. Use default setting and construct a read and write VisualProperties Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Gets or sets the visual element used to draw the checkbox. Default is DevAge.Drawing.VisualElements.CheckBoxThemed. Summary description for a 3D themed Button. Represents a Button with the ability to draw an Image. Disable also the selection border using the OwnerDrawSelectionBorder = true. Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Summary description for ICellSortableHeader. Returns the current sort status Set the current sort mode Constructor Status of current sort. Constructor Status of current sort. Comparer used to sort the column. The comparer will take 2 Cell. If null the default ValueCellComparer is used. Allow to customize the tooltiptext of a cell. This class read the tooltiptext from the ICellToolTipText.GetToolTipText. This behavior can be shared between multiple cells. Default tooltiptext Change the cursor with the cursor of the cell Reset the original cursor Common behavior of the cell. This controller can be shared between multiple cells and is usually used as the default Grid.Controller. Removing this controller can cause unexpected behaviors. The default behavior of a cell. Fired when the SetValue method is called. Fired when editing is ended A behavior that support sort and resize. Once created cannot be modified. When calculated automatically the range to sort is all the grid range without the rows minor of the current row and the range header is all the grid range with the rows minor or equal of the current row Column header behavior with sort and resize support, same as SortResizeHeader. Border used to calculate the region where the sort is enabled. Static constructor Constructor If null then the range is automatically calculated. If null then the range is automatically calculated. Range to sort Header range (can be null). Indicates if for the specified cell the sort is enabled. Sort the current column. If the range contains all the columns this method move directly the row object otherwise move each cell. Range to sort. If null and EnableSort is true the range is automatically calculated. Header range. If null and EnableSort is true the range is automatically calculated. In this Controller are defined all the events fired by the Controller. Each event has a sender object of type CellContext that you can use to read the cell informations. Fired before the value of the cell is changed. Fired after the value of the cell is changed. Fired before the value of the cell is changed. Fired after the value of the cell is changed. Interface to receive the callback for the activity events. Fired when the activity is started Activity that have sended the event Fired when the activity is completed Activity that have sended the event Fired when the activity or one of its children throws an exception Activity that have sended the event A collection of elements of type Activity Initializes a new empty instance of the ActivityCollection class. Determines whether a specfic IActivity value is in this ActivityCollection. The IActivity value to locate in this ActivityCollection. true if value is found in this ActivityCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this ActivityCollection The IActivity value to locate in the ActivityCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Adds an instance of type IActivity to the end of this ActivityCollection. The IActivity to be added to the end of this ActivityCollection. Inserts an element into the ActivityCollection at the specified index The index at which the IActivity is to be inserted. The IActivity to insert. Removes the first occurrence of a specific IActivity from this ActivityCollection. The IActivity value to remove from this ActivityCollection. Returns an enumerator that can iterate through the elements of this ActivityCollection. An object that implements System.Collections.IEnumerator. Gets or sets the IActivity at the given index in this ActivityCollection. Type-specific enumeration class, used by ActivityCollection.GetEnumerator. Destination type to convert the Value. Can be null if no destination type is required. A TypeConverter that support string conversion from and to string with the currency symbol. Support Conversion for Float, Double and Decimal, Int A TypeConverter that support string conversion from and to string with a custom format number. Support Conversion for Float, Double and Decimal, Int Default constructor Copy constructor Default constructor Copy constructor Clone Standard button used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. Default constructor Copy constructor Clone Standard checkbox used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. Default constructor Copy constructor Default constructor Copy constructor Clone Standard button used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. This interfaces defines the logic how spanned cell ranges are handled. At the moment this interface is bloated, since it was copy pasted from implementation straight from Grid. In the future it would be nice to reduce it so that separate implementations would be possible Adds or updates given range. Updates range only when existing range with given start position is found EventArgs used by the FocusRowEnter Constructor Row EventHandler used by the FocusRowEnter EventArgs used by the FocusRowLeaving Constructor Row Proposed row EventHandler used by the FocusRowLeaving EventArgs used by the FocusColumnEnter Constructor Column EventHandled used by the FocusColumnEnter EventArgs used by the FocusColumnLeaving Constructor Column Proposed column EventHandled used by the FocusColumnLeave and FocusColumnEnter Cell Lost Focus event arguments with the old position and the new position. Extends PositionCancelEventArgs. Constructor If Empty there isn't a cell that will receive the focus. Position that had the focus Position that will receive the focus. If Empty there isn't a cell that will receive the focus. Represents the event arguments used when changing a RangeRegion class (like the selection class). Constructor Constructor Use null if the added range is empty Use null if the removed range is empty Null if the added range is empty Null if the removed range is empty Interface for informations about a tooltiptext Get the tooltiptext of the specified cell Create an Editor that use a DateTimePicker as control for time editing. Create an Editor that use a DateTimePicker as control for date editing. The base class for all the editors that have a control Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Abstract method that must create a new Control used for the editing operations. Check if the Control is attached to a grid. Add the Control to the specified grid. Consider that a Control can only be a child of one Container. Start editing the cell passed. Do not call this method for start editing a cell, you must use CellContext.StartEdit. Cell to start edit This method is called just before the edit start. You can override this method to customize the editor with the cell informations. Apply edited value without stop the editing. Variable that indicate if the InternalEndEdit method is already called. Is used because the InternalEndEdit can be called by a the Control_Validated or directly by the user. Terminate the edit action. Do not call this method directly, use the CellContext.EndEdit instead. True to cancel the editing and return to normal mode, false to call automatically ApplyEdit and terminate editing Returns true if the cell terminate the editing mode Validated of the editor control Undo the edit value of the control to the initial value of the cell, usually used when pressing Esc key or terminate the edit operation with Cancel true. Set the specified value in the current editor control calling the SetEditValue method. If an exception is throwed calls the OnUserException method and set the default value. Returns the value inserted with the current editor control Set the specified value in the current editor control. Used to send some keyboard keys to the active editor. It is only valid when there is an active edit operations. Method used to precess the key sended. Abstract method that must be override in the derived class Calculate the minimum required size for the specified editor cell. The Control used to edit the Cell. The grid used by this editor. Null if the editor is not attached on a grid. KeyPress event is fired in 2 cases: when the Control.KeyPress event is executed and when the user start to editing the cell by pressing a key (calling SendCharToEditor) Set the e.Handled property to true to block the event Constructor Create the editor control This method is called just before the edit start. You can use this method to customize the editor with the cell informations. Set the specified value in the current editor control. Returns the value inserted with the current editor control Gets the control used for editing the cell. Constructor Constructor Create the editor control Gets the control used for editing the cell. A Model of type IValueModel used for binding the value to a specified property of the bound object. Used for the DataGrid control. A Model interface specific to contain the value of the cell. Get the value of the cell at the specified position Set the value of the cell at the specified position. This method must call OnValueChanging and OnValueChanged() event. Constructor This class implements a RowsSimpleBase class using a DataView bound mode for row count. This class implements a RowsBase class using always the same Height for all rows. Using this class you must only implement the Count method. Abstract base class for manage rows informations. Use this method to show or hide row Gets the height of the specified row. Sets the height of the specified row. Gets the rows index inside the specified display area. Gets the rows index inside the specified display area. The list returned is ordered by the index. Note that this method returns also invisible rows. True to returns also partial rows Calculate the Row that have the Top value smaller or equal than the point p_Y, or -1 if not found found. Y Coordinate to search for a row Measures the current row when drawn with the specified cells. True to fix the column width when calculating the required height of the row. Start column to measure End column to measure Returns the required height Auto size all the rows with the max required height of all cells. True to fix the column width when calculating the required height of the row. Start column to measure End column to measure stretch the rows height to always fit the available space when the contents of the cell is smaller. Fired when the numbers of rows changed. Gets the row top position. The Top is relative to the specified start position. Calculate the top using also the FixedRows if present. Gets the row bottom position. GetTop + GetHeight. Show a row (set the height to default height) Makes row visible or hidden. Fires OnRowVisibilityChanged event only if row visibility is changed Hide the specified row (set the height to 0) Returns true if the specified row is visible Returns the first visible scrollable row. Return null if there isn't a visible row. Returns the last visible scrollable row. Return null if there isn't a visible row. Returns the DataSource index for the specified grid row index. Returns the grid index for the specified DataSource index Returns the DataRowView object for a given grid row index. Return null if not applicable, for example if the DataSource is null or if the row index requested is a FixedRows Returns the index for a given item row. -1 if not valid. Gets the number of row of the current DataView. Usually this value is automatically calculated and cannot be changed manually. Gets or sets the header height (row 0) Return the DataColumn object for a given grid column index. Return null if not applicable, for example if the column index requested is a FixedColumns of an unbound column Returns the index for a given DataColumn. -1 if not valid. A ColumnInfo derived class used to store column informations for a DataGrid control. Mantains the cell used on this grid and manage the binding to the DataSource using a DataGridValueModel class. Constructor. Create a DataGridColumn class. Constructor. Create a DataGridColumn class. Create a DataGridColumn with special cells used for RowHeader, usually used when FixedColumns is 1 for the first column. Clears any associated data with DataGridView. PropertyColumn binds to DataTable, calling invalidate will remove this link Gets the ICellVirtual for the current column and the specified row. Override this method to provide custom cells, based on the row informations. Gets the property column. Can be null if not bound to a datasource Column. This field is used for example to support sorting. Gets or sets the header cell for this column. Typically is an instance of SourceGrid.Cells.DataGrid.ColumnHeader Gets or sets the cell used for this column for all the rows to disply the data Typically is an instance of SourceGrid.Cells.DataGrid.Cell or other classes of the same namespace Gets the conditions used to returns different cell based on the data of the row. Shell utilities This class is similar to the System.Data.SqlClient.SqlCommandBuilder, but use only the DataTable to create the required commands. Don't support identity (autoincrement) column and only the base data type. This class don't use the data source to explore the data but only the DataTable informations. So you must populate the PrimaryKeys of the DataSet. I suggest to use GUID column (uniqueidentifier) to replace the identity column. Remember to set the Connection of the generated command. Constructor table used to create commands Table used to create commands Summary description for FormPosition. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Default constructor Copy constructor Clone Back Color Draw mode for the header. Default is Linear. Border A container for other elements Default constructor Copy constructor Clone Rapresents a rounded rectangle, takes a rectangle and a round value from 0 to 1. Can be converted to a GraphicsPath for drawing operations. See also DevAge.Drawing.Utilities.FillRoundedRectangle and DrawRoundedRectangle methods. Costructor Content rectangle The amount to round the rectangle. Can be any vavlues from 0 to 1. Set to 0 to draw a standard rectangle, 1 to have a full rounded rectangle. Converts this structure to a GraphicsPath object, used to draw to a Graphics device. Consider that you can create a Region with a GraphicsPath object using one of the Region constructor. The amount to round the rectangle. Can be any values from 0 to 1. Set to 0 to draw a standard rectangle, 1 to have a full rounded rectangle. A struct that represents the borders of a cell. Contains 4 borders: Right, Left, Top, Bottom. If you have 2 adjacent cells and want to create a 1 pixel width border, you must set width 1 for one cell and width 0 for the other. Usually a cell has only Right and Bottom border. The bottom and top border lines are drawed over the right and left lines. Construct a RectangleBorder with the same border on all the side Construct a RectangleBorder with the specified Right and Bottom border and a 0 Left and Top border Construct a RectangleBorder with the specified borders Change the color of the current struct instance and return a copy of the modified struct. Change the dashStyle of the current struct instance and return a copy of the modified struct. Change the width of the current struct instance and return a copy of the modified struct. Change the width of the current struct instance and return a copy of the modified struct. Compare to current border with another border. Create an Inset border Create a Raised border Returns the distance of the specified point from the border rectangle. -1 if is not inside the border. Returns a positive value or 0 if inside the border. Consider always the distance from the outer border. Specifies alignment of content on the drawing surface. The same enum as System.Drawing.ContentAlignment. Rewritten for compatibility with the Compact Framework. Content is vertically aligned at the bottom, and horizontally aligned at the center. Content is vertically aligned at the bottom, and horizontally aligned on the left. Content is vertically aligned at the bottom, and horizontally aligned on the right. Content is vertically aligned in the middle, and horizontally aligned at the center. Content is vertically aligned in the middle, and horizontally aligned on the left. Content is vertically aligned in the middle, and horizontally aligned on the right. Content is vertically aligned at the top, and horizontally aligned at the center. Content is vertically aligned at the top, and horizontally aligned on the left. Content is vertically aligned at the top, and horizontally aligned on the right. Draw each element over the previous Align each element with the previous if an alignment is specified. Contains a list of ranges which differ only by row, that is vertically. This the reason why the class contains a word "row" in its name. "Merger" means that it will merge adjancent ranges into single big range. So, for example, if you have 100 ranges from first row to second, that equals to one big range from row 1 to 100. If Row 50 is not selected, then this class splits one big range into two smaller. One from first row to row number 49, and anoter range from row 51 to row 100 Although some functions work with Range structure, which has also a horizontal span, that information is actually not needed, and used as dummy only. Loops via all ranges. Ranges are guaranteed to be ordered from lowest row to highest. Returns a list of selected ranges start column, usually 0 end column, usually equals to column count - 1 Merges given range with one of the intersecting range in m_ranges if no intersecting ranges is found, then rangeToMerge is added to m_ranges Returns true if at least two ranges were joined Add a range to collection. If the range can be added (merged) to existing range, it will be added so. This will guarantee that the number of different ranges is kept to minimal. In theory only if user selects every second row, this would produce RowCount / 2 number of ranges. In practice, there are rarely more than 3 - 5 different selection regions columns values are ignored, so simply put 0 as start colum and 1 as end column. Only row values matter Returns new range witch is the max of both ranges in row axis As opposed to Adding a range, this will remove a range. It might happend that removing a range is dividing one bigger range into two smaller ones. So practically the number of ranges might increase. It might be that this method might carry more exact meaning with "Exclude", instead of "RemoveRange" Returns a list of indexes of rows Returns the selected region. Check if the row is selected. Returns true if one or more column of the row is selected. Returns true if the specified position can receive the focus. Set the focus on the first available cells starting from the not fixed cells. If there is an active selection set the focus on the first selected cells. Link the cell at the specified grid. For internal use only. Remove the link of the cell from the grid. For internal use only. Move the active cell (focus), moving the row and column as specified. Try to set the focus using the first shift, if failed try to use the second shift (rowShift2, colShift2). If rowShift2 or colShift2 is int.MaxValue the next start position is the maximum row or column, if is int.MinValue 0 is used, otherwise the current position is shifted using the specified value. This method is usually used for the Tab navigation using this code : MoveActiveCell(0,1,1,0); Returns true if the focus can be moved. Returns false if there aren't any cell to move. Move the active cell (focus), moving the row and column as specified. Returns true if the focus can be moved. Returns false if there aren't any cell to move. Does reset selection Move the active cell (focus), moving the row and column as specified. Returns true if the focus can be moved. Returns false if there aren't any cell to move. if false, selection is not reset Returns true if the selection is empty Invalidate all the selected cells Select or unselect the specified range Select or unselect the specified cell Check if the cell is selected. Reset the selection Select or unselect the specified row Select or unselect the specified column Move the Focus to the first cell that can receive the focus of the current row otherwise put the focus to null. Move the Focus to the first cell that can receive the focus of the current column otherwise put the focus to null. Change the ActivePosition (focus) of the grid. True to deselect the previous selected cells Fired after when the selection change (added or removed). If you need more control over the selection I suggest to create a custom Selection class. Gets or sets if enable multi selection using Ctrl key or Shift Key or with mouse. Default is true. Gets the active cell position. The cell with the focus. Returns Position.Empty if there isn't an active cell. Gets or sets the behavior of the focus and selection. Default is FocusStyle.Default. Fired before a cell receive the focus (FocusCell is populated after this event, use e.Cell to read the cell that will receive the focus) Fired before a cell lost the focus Fired before a row lost the focus Fired after a row receive the focus Fired before a column lost the focus Fired after a column receive the focus A Quadtree is a structure designed to partition space so that it's faster to find out what is inside or outside a given area. See http://en.wikipedia.org/wiki/Quadtree This QuadTree contains items that have an area (RectangleF) it will store a reference to the item in the quad that is just big enough to hold it. Each quad has a bucket that contain multiple items. The root QuadTreeNode The bounds of this QuadTree Double ocuppied space by adding one more root level node. Current root will go under the new root Insert the feature into the QuadTree Insert the feature into the QuadTree Query the QuadTree, returning the items that are in the given area Return first matching range Do the specified action for each item in the quadtree Returns the root node Returns all the content Get the count of items in the QuadTree returns An delegate that performs an action on a QuadTreeNode An utility class to export the grid in a html format file. Key:Image, Value:ImageFileName Constructor The path to write embedded images files The path used in the HTML source. If you save the images in the same path of the HTML file you can leave this path empty. The stream to write Clear the list of embedded images. This method don't delete the files only clear the list. Save the Image to file and returns the file Returns the path where the image is exported valid for the HTML page Convert a Color to HTML compatible string Export a font html element with the specified font and text Export the specified cell to HTML Export mode List of images exported during HTML export Flags for the export html features (Flags) Returns a sequence of row indexes which are visible only. Correctly handles invisible rows. How many visible rows to return Can return less rows than requested. This might occur if you request to return visible rows in the end of the grid, and all the rows would be hidden. In that case no indexes would be returned at all, even though specific amount of rows was requested The value of the vertical scroll bar. Note that this does not directly relate to row number. If there are no hidden rows at all, then scroll bar value directly relates to row index number. However, if some rows are hidden, then this value is different. Basically, it says how many visible rows must be scrolled down A Cell with a RichTextBox. This Cell is of type RichText. Abstract, you must override GetValue and SetValue. Constructor of a RichTextBox style cell. You must st a valid Model to use this type of cell with this constructor. A Cell with a RichTextBox. This Cell is of type string. View: Views.RichTextBox.Default Model: Models.RichTextBox Controllers: Controllers.RichTextBox.Default Default constrcutor Value constrcutor Change SelectionFont to bold respectively not bold if already set. Change SelectionFont to italic respectively not italic if already set. Change SelectionFont to underline respectively not underline if already set. Insert a string at the selection String to insert Change SelectionCharOffset to OFFSET respectively 0 if already set. Change SelectionEffectType to normal. Change SelectionCharOffset to OFFSET respectively 0 if already set. Change SelectionCharOffset to OFFSET respectively 0 if already set. Get RichTextBoxModel Font of current selection Color of current selection CharOffset of current selection Alignment of current selection A cell controller used to handle mouse selection Used for mouse multi selection and mouse scrolling Ends scroll tracking on double click Start the timer to scroll the visible area Stop the timer Controls which mouse buttons invoke mouse selection. Default is MouseButtons.Left A cell used as left row selector. Usually used in the DataCell property of a DataGridColumn. If FixedColumns is grater than 0 and the columns are automatically created then the first column is created of this type. Utilities Crypt and encrypt methods using DES Encrypt the specified string using DES String to encrypt Must be of 8 characters length Decrypt the specified string using DES String to decrypt Must be of 8 characters length Encrypt the specified stream using DES Must be of 8 characters length Decrypt the specified stream using DES Must be of 8 characters length Password utilities using SH1 alghoritm Hash the string p_Password using SH1 alghoritm (SHA1CryptoServiceProvider). An utility class with some method to signing and verify xml documents Generate the keys (public and private) Public and private key Public key Create a signature xml element for the specified xml document and private key Private+public key Create a signed xml document. Add a signature alement to the specified document using the specified private key. Private+public key Check the signature of the specified signed document (created with CreateSignedDoc) using the specified public key. Public key Extract the signature element from the specified signed document. Create a new XmlDocument from the specified signed document removing the signature element. Utilities for DataSet class. Contains some methods to create expression string, for Select and Epression methods and methods for selecting data like SelectDistinct. Create a string with this format: #MM/dd/yyyy# . This is the default format for DataSet expressions. Can be used for example with the DataTable.Select method. Create a string with an InvariantCulture format. Create a string with an InvariantCulture format. Create a string with an InvariantCulture format. Create a string with an InvariantCulture format. Create a string with an InvariantCulture format. Create a string with an InvariantCulture format. Replace any special sql character (like single quote) and replace it with the valid sql equivalent. Then add the appropriate quote if the type require (string). Replace any special sql character (like single quote) and replace it with the valid sql equivalent. Then add the appropriate quote if the type require (string). Return NULL Format the specified value in a string that can be used inside an expression. Create a like expression for string values, automatically calls FormatValueForExpression Create a start with expression for stirng value, automatically calls FormatValueForExpression Create an equal expression, automatically calls FormatValueForExpression Create a Not equal expression, automatically calls FormatValueForExpression Compares two values to see if they are equal. Also compares DBNULL.Value. Note: If your DataTable contains object fields, then you must extend this function to handle them in a meaningful way if you intend to group on them. Evaluate the given expression using the Compute method of a empty DataTable. Replace the parameters using the string.Format method ({0} syntax) Evaluate the given expression using the Compute method of an empty DataTable replacing the values of the specified Row. A textBox with a button on the right. Required designer variable. Constructor Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Apply the current Validator rules. This method is automatically fired when the Validator change. Show the dialog Fired when showing the drop down Fired when closing the dropdown Check if the selected value is valid based on the current validator and returns the value. Gets or sets the Validator class useded to validate the value and convert the text when using the Value property. You can use the ApplyValidatorRules method to apply the settings of the Validator directly to the ComboBox, for example the list of values. The button in the right of the editor Fired when showing the drop down Fired when closing the dropdown Gets or sets the typed value for the control, using the Validator class. If the Validator is ull the Text property is used. Similar to , this class merge adjancent ranges if they are differ only by row or column count. See TestRangeMergerByCells for unit tests, which show how this class works Repeat this function until it returns false to recursively merge all ranges true, if at least two ranges were joined into single A selection class that support free selection of cells (ranges) Base selection class Constructor Link the cell at the specified grid. For internal use only. Remove the link of the cell from the grid. For internal use only. Change the ActivePosition (focus) of the grid. True to deselect the previous selected cells Set the focus on the first available cells starting from the not fixed cells. If there is an active selection set the focus on the first selected cells. Move the Focus to the first cell that can receive the focus of the current column otherwise put the focus to null. Move the Focus to the first cell that can receive the focus of the current row otherwise put the focus to null. Returns true if the specified position can receive the focus. Fired before a row lost the focus Fired after a row receive the focus Fired before a column lost the focus Fired after a column receive the focus Fired when a cell receive the focus Fired when a cell lost the focus Move the active cell (focus), moving the row and column as specified. Returns true if the focus can be moved. Returns false if there aren't any cell to move. Move the active cell (focus), moving the row and column as specified. Returns true if the focus can be moved. Returns false if there aren't any cell to move. Move the active cell (focus), moving the row and column as specified. Returns true if the focus can be moved. Returns false if there aren't any cell to move. Move the active cell (focus), moving the row and column as specified. Try to set the focus using the first shift, if failed try to use the second shift (rowShift2, colShift2). If rowShift2 or colShift2 is int.MaxValue the next start position is the maximum row or column, if is int.MinValue 0 is used, otherwise the current position is shifted using the specified value. This method is usually used for the Tab navigation using this code : MoveActiveCell(0,1,1,0); Returns true if the focus can be moved. Returns false if there aren't any cell to move. Move the active cell (focus), moving the row and column as specified. Try to set the focus using the first shift, if failed try to use the second shift (rowShift2, colShift2). If rowShift2 or colShift2 is int.MaxValue the next start position is the maximum row or column, if is int.MinValue 0 is used, otherwise the current position is shifted using the specified value. This method is usually used for the Tab navigation using this code : MoveActiveCell(0,1,1,0); Returns true if the focus can be moved. Returns false if there aren't any cell to move. Invalidate all the selected cells Check if the column is selected. Returns true if one or more row of the column is selected. Select or unselect the specified column Check if the row is selected. Returns true if one or more column of the row is selected. Select or unselect the specified row Check if the cell is selected. Select or unselect the specified cell Check if the range is selected. Select or unselect the specified range Reset the selection Reset the selection Returns true if the selection is empty Returns the selected region. Returns true if the specified selection intersect with the range Check if the range can be selected The Grid object Gets the active cell position. The cell with the focus. Returns Position.Empty if there isn't an active cell. Gets or sets the backColor of the cell with the Focus. Default is Color.Transparent. Gets or sets the behavior of the focus and selection. Default is FocusStyle.Default. Fired before a cell receive the focus (FocusCell is populated after this event, use e.Cell to read the cell that will receive the focus) Fired before a cell lost the focus Fired before a row lost the focus Fired after a row receive the focus Fired before a column lost the focus Fired after a column receive the focus Gets or sets if enable multi selection using Ctrl key or Shift Key or with mouse. Default is true. Gets or set the highlight backcolor. Usually is a color with a transparent value so you can see the color of the cell. Default is: Color.FromArgb(75, Color.FromKnownColor(KnownColor.Highlight)) The Border used to highlight the range Fired after when the selection change (added or removed). If you need more control over the selection I suggest to create a custom Selection class. Returns true if the selection is empty Returns the selected region. Returns true if the specified selection intersect with the range Adds or updates given range. Updates range only when existing range with given start position is found Updates range whose start position matches. If no matches found, an exception is thrown An utility class to export a grid to a csv delimited format file. Gets or sets the range to draw A dictionary with keys of type Control and values of type LinkedControlValue Determine the scrolling mode of the linked controls. Linked control value Constructor Gets or sets the position of the linked control. Gets or sets if show the cell border. True to insert the editor control inside the border of the cell, false to put the editor control over the entire cell. If you use true remember to set EnableCellDrawOnEdit == true. Gets or sets the scrolling mode of the control. Summary description for a 3D Header. This is a standard header without theme support. Use the ColumnHeaderThemed for theme support. Summary description for a 3D Header. Represents a default Header, with a 3D border and a LightGray BackColor Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Represents a Column Header with the ability to draw an Image in the right to indicates the sort operation. You must use this model with a cell of type ICellSortableHeader. Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Gets or sets the visual element used to draw the sort indicator. Default is DevAge.Drawing.VisualElements.SortIndicator Interface for informations about an image. Get the image of the specified cell. Summary description for BindProperty. Constructor Property of the object that you want to lint to the cell. When the value of the cell changed this behavior call automatically this property. Instance of the object to link OnValueChanged Bind the cell's value with the property p_Property of the object p_LinkObject when the cell's value change also the property change linked property Can be null to call static property UnBind the cell with the property Summary description for DateTimeHelper. Calculate the difference in years of 2 dates. Usually used for age calculations. dateA - dateB Calculate the difference in months of 2 dates. dateA - dateB A class used to draw a generic sort indicator, usually a arrow. Use the SortStyle to customize the sort style (arrow up or arrow down) Default constructor Constructor Copy constructor Gets or sets the Icon to draw. Default is null. Default constructor Copy constructor Clone Default constructor Copy constructor Clone Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. Class used to draw a standard linear gradient background. If FirstColor == SecondColor a solid color is drawed. Default constructor Constructor Copy constructor Clone Gets or sets the first back color of the content. Gets or sets the second back color of the content. Gets or sets the angle of the gradient Gradients are commonly used to smoothly shade the interiors of shapes. A blend pattern is defined by two arrays (Factors and Positions) that each contain the same number of elements. Each element of the Positions array represents a proportion of the distance along the gradient line. Each element of the Factors array represents the proportion of the starting and ending colors in the gradient blend at the position along the gradient line represented by the corresponding element in the Positions array. For example, if corresponding elements of the Positions and Factors arrays are 0.2 and 0.3, respectively, for a linear gradient from blue to red along a 100-pixel line, the color 20 pixels along that line (20 percent of the distance) consists of 30 percent blue and 70 percent red. See System.Drawing.Drawing2D.Blend for details Gradients are commonly used to smoothly shade the interiors of shapes. A blend pattern is defined by two arrays (Factors and Positions) that each contain the same number of elements. Each element of the Positions array represents a proportion of the distance along the gradient line. Each element of the Factors array represents the proportion of the starting and ending colors in the gradient blend at the position along the gradient line represented by the corresponding element in the Positions array. For example, if corresponding elements of the Positions and Factors arrays are 0.2 and 0.3, respectively, for a linear gradient from blue to red along a 100-pixel line, the color 20 pixels along that line (20 percent of the distance) consists of 30 percent blue and 70 percent red. See System.Drawing.Drawing2D.Blend for details A class derived from BoundListBase that can be used to bind a list control (like SourceGrid) to a generic IList class. If the IList is an instance of List class then also the Sort is supported. Implement the IBoundList interface used for data binding. An abstract class used for data binding. This class can be used as a base implementation of the IBoundList interface. You can use the concreate classes BoundList or BoundDataView or a custom class. To implement you own bound list class simply derive from this class and implement the abstract methods. A generic binded list interface. See BoundDataView or BoundList for a concreate implementation. It is used as an abstraction layer for list objects (typically a list can be a DataView or a IList class) Can be used to bind a list control (like SourceGrid). Clear all list items Get an item property by name Create a new item (row) add it at the end of the list and return the new item. Return the index of the specified item Remove the item at the specified position. Remove all items. Sort the list Gets the current edited object Gets or sets if the sort is enabled. Usually is enabled only if the IList is an instance of List class Return the item at the specified position. Return the row count of the list A comparer used to sort more than one columns. A comparer for the Cell class. (Not for CellVirtual). Using the DisplayString of the cell. A collection of elements of type Range Returns true if the specified cell position is present in any range in the current collection. EditorNumericUpDown editor class. Create a model of type Decimal Create the editor control Set the specified value in the current editor control. Returns the value inserted with the current editor control Gets the control used for editing the cell. Construct an EditorBase for the specified type. You can set the value returned in the Editor property. If the Type support a UITypeEditor returns a EditorUITypeEditor else if the type has a StandardValues list return a EditorComboBox else if the type support string conversion returns a EditorTextBox otherwise returns null. Type to edit Construct a CellEditor for the specified type Cell Type Default value of the editor Allow null List of available values or null if there is no available values list Indicates if the p_StandardValue are the unique values supported Type converter used for conversion for the specified type UITypeEditor if null must be populated the TypeConverter Returns null if not exist Fired before the value of the cell is changed. Fired after the value of the cell is changed. Fired when the StartEdit is called and before the cell start the edit operation. You can set the Cancel = true to stop editing. Fired when the StartEdit is sucesfully called. Fired when the EndEdit is called. You can read the Cancel property to determine if the edit is completed. If you change the cancel property there is no effect. A collection of elements of type IController. Only one instance of the same controller is allowed. A collection of object with a special method that returns an object compatible with a specified Type, GetByType(Type). Returns an object of the list that is compatible from the specified type. The Type is compared using the IsAssignableFrom method. If there isn't a compatible object returns null. This controller dispatch each event to the specified cell. This controller can be shared between multiple cells and is usually used as the default Grid.Controller. Removing this controller can cause unexpected behaviors. The default behavior of a cell. Fired when the SetValue method is called. Fired when editing is ended Button controller is used to executed a specific action when the user click on a cell or when the user press the Enter or Space key (using the OnKeyDown event). Is normally used with the Link or Button Cell. Override the OnExecuted to add your code or use the Executed event. I mantain the last mouse button pressed here to simulate exactly the behavior of the standard system button. Here are the events executed on a system button: [status checked = false] MouseDown [status checked = false] CheckedChanged [status checked = true] Click [status checked = true] MouseUp [status checked = true] Consider that I can use this member varialbes because also if you have multiple grid or multiple threads there is only one mouse that can fire the events. Consider also that I cannot use the Click event because in that event I don't have informations about the button pressed. Method used to create the rows object, in this class of type PingGridRows. Method used to create the columns object, in this class of type DataGridColumns. Gets a specified Cell by its row and column. Delete all the selected rows. Returns true if one or more row is deleted otherwise false. AutoSize the columns based on the visible range and autosize the rows based on it's contents. Check if the specified row is the active row (focused), return false if it is not the active row. Then call the BeginEdit on the associated DataRowView. Add a row to the DataView if required. Returns true if the method sucesfully call the BeginEdit and set the EditingRow property. Calls the CancelEdit or the EndEdit on the editing Row and set to null the editing row. Sorting is always enabled Gets or sets the IBoundList used for data binding. It can be any class that implements the IBoundList interface, usually can be BoundList (that can be used to bind to a generic List) or BoundDataView (that can be used to bind to a DataView). Gets the rows information as a PingGridRows object. Gets the columns informations as a PingGridColumns object. Gets or sets the selected DataRowView. Gets or sets a property to force an End Editing when the control loose the focus Gets or sets if enable the delete of the selected rows when pressing Delete key. Gets or sets if enable the Cancel Editing feature when pressing escape key Message showed with the DeleteSelectedRows method. Set to null to not show any message. A class for parsing fixed length string and loading the fields into a class. Constructor. Fill the Fields list fot specify the columns. Load the parser fields with the properties specified in the type. You must use the FieldAttribute and ParseFormatAttribute to specify additional informations like the field length. Reset the parser Load the specified line in the parser. Get a specified field value. Fill the properties of the specified class with the values of the line has defined by the Fields collection. Returns the same class specified in the schemaClass parameter, this is useful if you have struct or value types. Gets a collection of fields. A dictionary with keys of type String and values of type PersistableItem Initializes a new empty instance of the PersistableItemDictionary class Adds an element with the specified key and value to this PersistableItemDictionary. The String key of the element to add. The PersistableItem value of the element to add. Determines whether this PersistableItemDictionary contains a specific key. The String key to locate in this PersistableItemDictionary. true if this PersistableItemDictionary contains an element with the specified key; otherwise, false. Determines whether this PersistableItemDictionary contains a specific key. The String key to locate in this PersistableItemDictionary. true if this PersistableItemDictionary contains an element with the specified key; otherwise, false. Determines whether this PersistableItemDictionary contains a specific value. The PersistableItem value to locate in this PersistableItemDictionary. true if this PersistableItemDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this PersistableItemDictionary. The String key of the element to remove. Gets or sets the PersistableItem associated with the given String The String whose value to get or set. Gets a collection containing the keys in this PersistableItemDictionary. Gets a collection containing the values in this PersistableItemDictionary. Summary description for DropDownCustom. Required designer variable. Constructor to create a dropdown form used to display the innerControl specified. It is responsability of the caller to dispose the innerControl. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Close the DropDown whe the user press the escape key, return DialogResult.Cancel Close the DropDown whe the user press the enter key, return DialogResult.OK Default constructor Copy constructor Default constructor Copy constructor Clone Standard column header used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. An editor that use a RichTextBoxTyped for editing support. Constructor Create the editor control This method is called just before the edit start. You can use this method to customize the editor with the cell informations. Set the specified value in the current editor control. Returns the value inserted with the current editor control Override content of cell with sent character Gets the control used for editing the cell. A behavior that invalidate the cell on mouse events Default implementation. Constructor A ColumnInfo derived class used to store column informations for a PingGrid control. Mantains the cell used on this grid and manage the binding to the DataSource using a DataGridValueModel class. Constructor. Create a DataGridColumn class. Constructor. Create a DataGridColumn class. Create a DataGridColumn with special cells used for RowHeader, usually used when FixedColumns is 1 for the first column. Clears any associated data with DataGridView. PropertyColumn binds to DataTable, calling invalidate will remove this link Gets the ICellVirtual for the current column and the specified row. Override this method to provide custom cells, based on the row informations. Gets the property column. Can be null if not bound to a datasource Column. This field is used for example to support sorting. Gets or sets the header cell for this column. Typically is an instance of SourceGrid.Cells.DataGrid.ColumnHeader Gets or sets the cell used for this column for all the rows to disply the data Typically is an instance of SourceGrid.Cells.DataGrid.Cell or other classes of the same namespace Gets the conditions used to returns different cell based on the data of the row. This class implements a RowsSimpleBase class using a DataView bound mode for row count. Returns the DataSource index for the specified grid row index. Returns the grid index for the specified DataSource index Returns the DataRowView object for a given grid row index. Return null if not applicable, for example if the DataSource is null or if the row index requested is a FixedRows Returns the index for a given item row. -1 if not valid. Gets the number of row of the current DataView. Usually this value is automatically calculated and cannot be changed manually. Gets or sets the header height (row 0) A grid control that support load from a System.Data.DataView class, usually used for data binding. Method used to create the rows object, in this class of type DataGridRows. Method used to create the columns object, in this class of type DataGridColumns. Gets a specified Cell by its row and column. Automatic create the columns classes based on the specified DataSource. Delete all the selected rows. Returns true if one or more row is deleted otherwise false. AutoSize the columns based on the visible range and autosize the rows based on it's contents. Check if the specified row is the active row (focused), return false if it is not the active row. Then call the BeginEdit on the associated DataRowView. Add a row to the DataView if required. Returns true if the method sucesfully call the BeginEdit and set the EditingRow property. Calls the CancelEdit or the EndEdit on the editing Row and set to null the editing row. Gets or sets the IBoundList used for data binding. It can be any class that implements the IBoundList interface, usually can be BoundList (that can be used to bind to a generic List) or BoundDataView (that can be used to bind to a DataView). Gets the rows information as a DataGridRows object. Gets the columns informations as a DataGridColumns object. Gets or sets the selected DataRowView. Gets or sets a property to force an End Editing when the control loose the focus Gets or sets if enable the delete of the selected rows when pressing Delete key. Gets or sets if enable the Cancel Editing feature when pressing escape key Message showed with the DeleteSelectedRows method. Set to null to not show any message. A Model of type IValueModel used for binding the value to a specified property of the bound object. Used for the DataGrid control. Constructor Required attribute to specify the field position and length Constructor. Index of the field, 0 based. Each field must have a unique progressive index Lenght of the field when readed and writed to the string. Attribute used to specify additional parse options Constructor. Use one of these properties to customize the format: CultureInfo, DateTimeFormat, NumberFormat, TrimBeforeParse. Default is Invariant culture format. Attribute used to convert a specific value to another value Constructor String value Field typed value Attribute used to specify the standard value (mandatory value) for a specific field. You can use this attribute for example when you want a particular field to only accept one or more standard values. Construcotr Required value A static class to help save and read stream data The type specified it is not supported in the current contest Constructor Constructor Command line not valid exception Constructor Constructor Conversion exception Constructor Constructor Constructor Common EventArgs class used to store and raise events with an Exception associated Constructor Exception Common EventHandler class used to raise events with an Exception associated Summary description for DateTimeTypeConverter. DateTimeStyle for Parse operations. DefaultValue: AllowInnerWhite|AllowLeadingWhite|AllowTrailingWhite|AllowWhiteSpaces Format of the Date. Example: G, g, d, D. Default value : G Formats to check when parse the string. If null call with no format the parse method. Default value: null A LinkLabel with Image support and round border support. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. The default image to draw Specifies the image to display when the mouse is inside the link area. If null is used the normal image. Specifies the image to display when the link is disabled. Gets or sets the width of the border. If 0 no border is drawed. Round amount. If 0 the border is a not rounded. Border color. Summary description for HeaderGroupBox. A Windows Forms Form that can be used to display a dialog similar to a message box to show an exception. Can be used to show the Exception.Message, call stack and inner exception by clicking on the Details link. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Default constructor Copy constructor Clone Standard button used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. A class used to cache the Brush used by the drawing methods. Use the GetBrush method to retrive or insert new brushes. Remember to call Dispose when you don't need anymore this class to release all graphics resources. Usually you don't need to use this class directly but you can acces it using the GraphicsCache class. Constructor A positive number that specify the capacity of the cache. Returns the existing Brush object if already exist in the cache, otherwise create it and store in the cache. If there aren't anymore free slots (count > capacity) the this method create the pen but don't store it in the cache. Dispose. Release the graphics resources. Collection of RowInfo Constructor Returns true if the range passed is valid Returns true if the range passed is valid for insert method Insert the specified number of rows at the specified position Remove a row at the speicifed position Remove the RowInfo at the specified positions Move a row from one position to another position Change the position of row 1 with row 2. Fired when the number of rows change Fired when some rows are removed Fired before some rows are removed Execute the RowHeightChanged event Auto size the rows calculating the required size only on the columns currently visible Remove all the columns Fired when the number of rows change Fired when some rows are removed Fired before some rows are removed Indexer. Returns a RowInfo at the specified position Fired when the user change the Height property of one of the Row RangeData class represents a range of data. Can represent a range of data in string format. Usually used for drag and drop and clipboard copy/paste operations. See Controllers\Clipboard, Controllers\SelectionDrag and Controllers\SelectionDrop. The string constant used with the System.Windows.Forms.DataFormats.GetFormat to register the clipboard format RangeData object. Static constructor Constructor Load the specified range data into a string array. This method use the cell editor to get the value. Cut mode. Can be used to remove the data from the source when pasting it to the destination or immediately. Load the data from a Tab delimited string of data. Each column is separated by a Tab and each row by a LineFeed character. Write the current loaded array string in the specified grid range. This method use the cell editor to set the value. Convert a string buffer into a Range object and an array of string. Convert an array of strings into a string. Normally using a tab delimited for columns and a LineFeed for rows. Convert a range and an array of string into a string. Normally using a tab delimited for columns and a LineFeed for rows. Calculate the destination range for the drop or paste operations. Copy the specified RangeData object the the clipboard Get a RangeData object from the clipboard. Return null if the clipboard doesn't contains valid data formats. Range source String array for values. Starting drag position. Used only for calculating drop destination range. Working grid. Cut mode. Default is none. Summary description for a 3D themed Header. Represents a Column Header with the ability to draw an Image in the right to indicates the sort operation. You must use this model with a cell of type ICellSortableHeader. Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. A cell that rappresent a header of a table, with 3D effect. This cell override IsSelectable to false. Default use VisualModels.VisualModelHeader.Style1 Constructor Gets or sets if enable the resize of the width of the column. This property internally use the Controllers.Resizable.ResizeWidth. Gets or sets if enable the automatic sort features of the column. This property internally use the Controllers.SortableHeader.Default. A cell that rappresent a header of a table. View: Views.ColumnHeader.Default Model: Models.SortableHeader Controllers: Controllers.Unselectable.Default, Controllers.MouseInvalidate.Default, Controllers.Resizable.ResizeWidth, Controllers.SortableHeader.Default Constructor Constructor Sort the column Gets or sets if enable the resize of the width of the column. This property internally use the Controllers.Resizable.ResizeWidth. Gets or sets if enable the automatic sort features of the column. This property internally use the Controllers.SortableHeader.Default. If you want to use a custom sort you can add a customized Controller or a customized instance of Controllers.SortableHeader. Gets the used SortableHeader model. Status of the sort. Comparer used. Sort style. Structure that represents a logical cell, composed by a ICellVirtual, a Position and a GridVirtual. This is an important structure used to manipulate the cell object, both virtual and real. An empty CellContext instance. Constructor Constructor If the cell is not linked to a grid the result is not accurate (Font can be null). Call InternalGetRequiredSize with RowSpan and ColSpan = 1. SizeF structure that specifies the maximum layout area for the text. If width or height are zero the value is set to a default maximum value. Start the edit operation with the current editor specified in the Model property. Terminate the edit operation. If true undo all the changes Returns true if the edit operation is successfully terminated, otherwise false True if this cell is currently in edit state, otherwise false. True is the cell can be drawn (usually if the cell is in editing state the drawing code is disabled) Invalidate this cell Returns true if the current struct is empty GetHashCode Gets the string representation of the Model.ValueModel.GetValue method (default ToString()) Gets or sets the cell value. Calculate the Range occupied by the current cell. Usually it is simply the Position property, only if RowSpan or ColumnSpan is used this property returns a larger range. Internally use the Grid.PositionToCellRange method. A cell that rappresent a button Constructor. A cell that rappresent a button Constructor Static Class for serialization utilities Deserialize the stream. Using BinaryFormatter. Serialize the stream. Using BinaryFormatter. Deserialize the specified file. Using BinaryFormatter. Serialize the object to the specified file. Using BinaryFormatter. Summary description for ControlCursor. Default constructor Copy constructor Clone Compare to current padding with another padding. A struct that represents a single border line. Compare to current border with another border. Allow to customize the cursor of a cell. The cell must implement ICellCursor. This behavior can be shared between multiple cells. Change the cursor with the cursor of the cell Reset the original cursor Summary description for FullColumnSelection. Default controller to select all the column A cell used for the top/left cell when using DataGridRowHeader. A cell that rappresent a header of a table, with 3D effect. This cell override IsSelectable to false. Default use VisualModels.VisualModelHeader.Style1 Constructor null if not used null if not used null if not used null if not used null if not used A TypeConverter that support rich text conversion from and to string. Constructor String and RichText can be converted from String and RichText can be converted to Convert String to RichText Convert RichText to String Check if rich text string is valid Indicates to save all the childs form of a MDI window with the state of the active child window if this window is maximized. This flag allow to reopen all the child form maximized if you close the form MDI parent with a maximized mdi child. A class that can be used to save into the isolated storage the position and the state of a Windows Forms control. Summary description for IsolatedStorageSettingVersionBase. Abstract class that help to save settings in the isolated storage Default constructor Constructor Copy constructor Init rich text box control Will be used to draw picture of rich text. Is static for performance reasons and therefore needs to be locked. Convert between 1/100 inch (unit used by the .NET framework) and twips (1/1440 inch, used by Win32 API calls) Value in 1/100 inch Value in twips Calculate or render the contents of our RichTextBox for printing If true, only the calculation is performed, otherwise the text is rendered as well Index of first character to be printed Index of last character to be printed (Index of last character that fitted on the page) + 1 Free cached data from rich edit control after printing Helper method to get bitmap with size according its area and rotate flip type Render RichTextBox as GDI Draw actual picture Measure the current content of the VisualElement. If empty is not used. Clone Default constructor Copy constructor Clone Back Color Draw mode for the header. Default is Linear. Border A wrapper for the GDI Graphic instance. Contains also a set of class used to cache pens and brushes. This is a QuadTree implementation for cell ranges. Performance is definetely not O(n*n) as in simple list of ranges Have a look at these numbers to see the difference: with simple List of Ranges Total 30000 spanned ranges Total result count 90000 Total time 98541 ms Average time 0,98541 Total queries 100000 testing quad tree Total 30000 spanned ranges Total result count 90000 Total time 1495 ms Average time 0,01495 Total queries 100000 max tree depth: 11 This interface helps work with spanned ranges collection There are two implementations at the moment. One is SpannedRangesList, another is QuadTree implementation, which is much faster. Look at unit tests for speed comparisons: TestSpannedCellRnages_Performance: TestBoth. Searches for an old range. If finds, updates found region. Else throws RangeNotFoundException Increase size up to specified values. Note that shrinking is not possible If does not find, throws RangeNotFoundException Returns range which has exactly the same start position as indicated Returns the number of ranges contained A comparer for the Cell class. (Not for CellVirtual). Using the value of the cell. A Cell with an Image. Write and read byte[] values. Constructor using a ValueImage model to read he image directly from the value of the cell. A Cell with an Image. Write and read byte[] values. Constructor Constructor using a ValueImage model to read he image directly from the value of the cell. An editor that use a TextBoxTypedButton for editing. Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Create the editor control This method is called just before the edit start. You can use this method to customize the editor with the cell informations. Set the specified value in the current editor control. Returns the value inserted with the current editor control Gets the control used for editing the cell. An extension point, where users could define their own property resolver This class derive from GridVirtual and create a grid bound to an array. Gets or sets the data source array used to bind the grid. Gets or sets the cell used for the column headers. Only used when FixedRows is greater than 0. Gets or sets the cell used for the row headers. Only used when FixedColumns is greater than 0. Gets or sets the cell used for the left top position header. Only used when FixedRows and FixedColumns are greater than 0. A cell header used for the columns. Usually used in the HeaderCell property of a DataGridColumn. A cell used as left row selector. Usually used in the DataCell property of a DataGridColumn. If FixedColumns is grater than 0 and the columns are automatically created then the first column is created of this type. A cell used for the top/left cell when using DataGridRowHeader. A class used to create fixed lenght string. A dictionary with keys of type string and values of type IField Initializes a new empty instance of the FieldList class Adds an element with the specified key and value to this FieldList. The IField value of the element to add. Determines whether this FieldList contains a specific key. The string key to locate in this FieldList. true if this FieldList contains an element with the specified key; otherwise, false. Determines whether this FieldList contains a specific key. true if this FieldList contains an element with the specified key; otherwise, false. Determines whether this FieldList contains a specific value. The IField value to locate in this FieldList. true if this FieldList contains an element with the specified value; otherwise, false. Removes the element with the specified key from this FieldList. The string key of the element to remove. Gets or sets the IField associated with the given string The string whose value to get or set. Gets a collection containing the keys in this FieldList. Gets a collection containing the values in this FieldList. The ValueMapping class can be used to easily map a value to a string value or a display string for conversion Constructor Constructor A list of valid value. If null an error occurred. The index must match the index of ValueList, ObjectList and DisplayStringList A list of displayString. Can be null. The index must match the index of ValueList, ObjectList and DisplayStringList A list of object that can be converted to value. Can be null. The index must match the index of ValueList, ObjectList and DisplayStringList The type of object stored in the specialList collection. Bind the specified validator Unbind the specified validator A list of valid value. If null an error occurred. The index must match the index of ValueList and DisplayStringList A list of object that can be converted to value. Can be null. The index must match the index of ValueList and DisplayStringList. Must be a list of object of the type specified in the SpecialType property. Usually this property can be used when performing special conversion of specific type. For example if you want to map an enum value or an id value to a string for a better user experience. Gets or sets the type used for converting an object to a value and a value to an object when populating the SpecialList property. Default is System.String. A list of displayString. Can be null. The index must match the index of ValueList and DisplayStringList Gets or sets, if throw an error when the value if not found in one of the collections. Default true. Class used to implement an empty ITypeDescriptorContext. This class seems to be required by the mono framework, ms framework accept null as ITypeDescriptorContext Empty ITypeDescriptorContext instance. For now I use null because mono seems to don't like this class (and throw anyway an exception) Summary description for Utilities. Summary description for ErrorDialogDetails. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. A TextBox that allows to set the type of value to edit, then you can use the Value property to read and write the specific type. Apply the current Validator rules. This method is automatically fired when the Validator change. Check if the selected value is valid based on the current validator and returns the value. Gets or sets a property to enable or disable the automatic format of the Text when validating the control Gets or sets the Validator class useded to validate the value and convert the text when using the Value property. You can use the ApplyValidatorRules method to apply the settings of the Validator directly to the ComboBox, for example the list of values. Gets or sets the typed value for the control, using the Validator class. If the Validator is ull the Text property is used. Summary description for ButtonMultiSelection. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. A collection of elements of type SubButtonItem Initializes a new empty instance of the SubButtonItemCollection class. Initializes a new instance of the SubButtonItemCollection class, containing elements copied from an array. The array whose elements are to be added to the new SubButtonItemCollection. Initializes a new instance of the SubButtonItemCollection class, containing elements copied from another instance of SubButtonItemCollection The SubButtonItemCollection whose elements are to be added to the new SubButtonItemCollection. Adds the elements of an array to the end of this SubButtonItemCollection. The array whose elements are to be added to the end of this SubButtonItemCollection. Adds the elements of another SubButtonItemCollection to the end of this SubButtonItemCollection. The SubButtonItemCollection whose elements are to be added to the end of this SubButtonItemCollection. Adds an instance of type SubButtonItem to the end of this SubButtonItemCollection. The SubButtonItem to be added to the end of this SubButtonItemCollection. Determines whether a specfic SubButtonItem value is in this SubButtonItemCollection. The SubButtonItem value to locate in this SubButtonItemCollection. true if value is found in this SubButtonItemCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this SubButtonItemCollection The SubButtonItem value to locate in the SubButtonItemCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the SubButtonItemCollection at the specified index The index at which the SubButtonItem is to be inserted. The SubButtonItem to insert. Removes the first occurrence of a specific SubButtonItem from this SubButtonItemCollection. The SubButtonItem value to remove from this SubButtonItemCollection. Returns an enumerator that can iterate through the elements of this SubButtonItemCollection. An object that implements System.Collections.IEnumerator. Gets or sets the SubButtonItem at the given index in this SubButtonItemCollection. Type-specific enumeration class, used by SubButtonItemCollection.GetEnumerator. Default constructor Copy constructor Clone Clone Gets or sets the back color of the content. A class to help measure string operations. Remember to call the Dispose method on this class. Create a graphic object from the current control This object is not automatically disposed. Clean up any resources being used. The AnchorArea class is used to specify the anchor properties of an object. You can set to align the content to the left, right, top or bottom using the relative properties (Left, Right, Top, Bottom). You can also set more than one properties to allign the content to more than one side. Use float.NaN to set a null value for one of the properties. Default is constructor Construct an anchor area object Copy constructor Constructo an anchorarea class based on the aligment and the stretch parameters. Calculate the destination area of A generic converter class used to convert values from one type to another Converts specified value to type . Type to convert to. Value to convert. Converted value. Converts specified value to the specified type. Value to convert. Type to convert to. Converted value. Expand tree by creating new root. Add old root under new root, and create any additional tree nodes that are needed Tries to divide into nodes, that are more suited for grids, which expand more into rows than into columns. In this case, quad tree does not end up divided into regions where width is very very small. This is much more efficien space partitioning Creates sub-nodes simply by dividing current node by 2 and creating 4 smaller regions. This is not efficient if the area is very rectangular, for example, row count 10 000 and column count 10 Use ProportioanteSizeNodeDivider instead The QuadTreeNode Construct a quadtree node with the given bounds The area of this node The contents of this node. Note that the contents have no limit: this is not the standard way to impement a QuadTree The child nodes of the QuadTree Query the QuadTree for items that are in the given area Insert an item to this node Is the node empty Area of the quadtree node Total number of nodes in the this node and all SubNodes Return the contents of this node and all subnodes in the true below this one. Constructor A model that contains the value of cell. Usually used for a Real Cell or cells with a static text. value to set for this model new value of this model CheckBox model. Interface for informations about a cechkbox Get the status of the checkbox at the current position Set the checked value True, False or Null Constructor Set the checked value Get the image of the specified cell. Model that implements the IImage interface, used to read the Image directly from the Value of the cell. A model that use a TextBoxButton for Image editing, allowing to select a source image file. Returns null as DisplayString. Write and read byte[] values. Construct an Editor of type ImagePicker. Create the editor control Used to returns the display string for a given value. In this case return null. Gets the control used for editing the cell. Editor for a ComboBox (using DevAgeComboBox control) Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model True to not allow custom value, only the values specified in the standardvalues collection are allowed. Create the editor control Set the specified value in the current editor control. Returns the value inserted with the current editor control Gets the control used for editing the cell. Implements a behavior that cannot receive the focus. This behavior can be shared between multiple cells. Implement the mouse resize features of a cell. This behavior can be shared between multiple cells. Resize both width nd height behavior Resize width behavior Resize height behavior Border used to calculate the region where the resize is enabled. Constructor Resize mode of the cell Indicates if the behavior is currently resizing a cell width Indicates if the behavior is currently resizing a cell height The CellControl class is used to create a cell with a Windows Forms Control inside. The CellControl class requires a new Windows Forms control for each cell. Unfortunately Winwods Forms control requires a lot of system resources and with many cells this can cause system fault or out of memory conditions. Basically I suggest to use CellControl with no more than 50 cells and only if necessary, usually it is better to use standard cells. Another problem with the CellControl class is that it is not integrated well with the rest of the grid (control borders, cell navigation, ...) Finally a cell of type CellControl cannot be moved, for example you cannot use sort, move the columns, ... when using a CellControl. Constructor. Control to insert inside the grid Constructor. Control to insert inside the grid Gets the control associated with this cell. Description ré–Ÿumé–‘ de Arguments. A TextBox that allows to set the type of value to edit, then you can use the Value property to read and write the specific type. Apply the current Validator rules. This method is automatically fired when the Validator change. Check if the selected value is valid based on the current validator and returns the value. Gets or sets a property to enable or disable the automatic format of the Text when validating the control Gets or sets the Validator class useded to validate the value and convert the text when using the Value property. You can use the ApplyValidatorRules method to apply the settings of the Validator directly to the ComboBox, for example the list of values. Gets or sets the typed value for the control, using the Validator class. If the Validator is ull the Text property is used. Default constructor Constructor Copy constructor Clone Measure the current content of the VisualElement. If empty is not used. Gets or sets the TextFormatFlags enum. Default constructor Copy constructor Clone Standard header used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. Gets or sets a property to indicate to rotate the standard column header if the row header is not defined in the current theme. This is expecially usefull because for many themes the row header is not defined. Default is true. A class to support list binding to a DataView object. Implement the IBoundList. Gets the current edited object This will help us track which rows are hidden, and which are not Returns a sequence of row indexes which are visible only. Correctly handles invisible rows. The value of the vertical scroll bar. Note that this does not directly relate to row number. If there are no hidden rows at all, then scroll bar value directly relates to row index number. However, if some rows are hidden, then this value is different. Basically, it says how many visible rows must be scrolled down How many visible rows to return Can return less rows than requested. This might occur if you request to return visible rows in the end of the grid, and all the rows would be hidden. In that case no indexes would be returned at all, even though specific amount of rows was requested Class to manage the visual aspect of a cell. This class can be shared beetween multiple cells. Represents a model with a link style font and forecolor. Use default setting and construct a read and write VisualProperties Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. ColumnFocus controller overrides the OnFocusEntering method and set the Focus on the Column. This controller is usually used on the Column Header when the Sort is disabled. Default controller to select all the column Summary description for BehaviorModelCheckBox. This behavior can be shared between multiple cells. Default behavior checkbox Constructor Constructor Indicates if this cells when checked or uncheck must change also the value of the selected cells of type CellCheckBox. I mantain the last mouse button pressed here to simulate exactly the behavior of the standard system CheckBox. Here are the events executed on a system checkbox: [status checked = false] MouseDown [status checked = false] CheckedChanged [status checked = true] Click [status checked = true] MouseUp [status checked = true] Consider that I can use this member varialbes because also if you have multiple grid or multiple threads there is only one mouse that can fire the events. Consider also that I cannot use the Click event because in that event I don't have informations about the button pressed. Toggle the value of the current cell and if AutoChangeValueOfSelectedCells is true of all the selected cells. Simulate an edit operation. An event similar to Windows.Forms.CheckBox.CheckedChanged. Fired when value changed Indicates if this cells when checked or uncheck must change also the value of the selected cells of type CellCheckBox. Default is false A Cell with a CheckBox. This Cell is of type bool. Abstract, you must override GetValue and SetValue. Constructor of a CheckBox style cell. You must st a valid Model to use this type of cell with this constructor. A cell header used for the columns. Usually used in the HeaderCell property of a DataGridColumn. A cell used as left row selector. Usually used in the DataCell property of a DataGridColumn. If FixedColumns is grater than 0 and the columns are automatically created then the first column is created of this type. A cell used for the top/left cell when using DataGridRowHeader. A TypeConverter that support string conversion from and to string with the percent symbol. Support Conversion for Float, Double and Decimal If true and the user insert a string with no percent symbel the value is divided by 100, otherwise not. A is simple List of Ranges. Uses simple iterating over list to find required range Returns first intersecting region RangeRegion is a collection of range that are never overlying each other. Copy constructor Returns a Collection of cells that represents the current class Returns all the selected rows index Returns all the selected columns index Indicates if the specified cell is selected Indicates if the specified range of cells is selected Indicates if the specified range of cells is selected Indicates if the specified row is selected Indicates if the specified column is selected Indicates if the specified range of cells is selected Returns a non contiguous range of cells of the intersection between the current range and the specified range. Returns the cells of the current range that don't intersect with the specified range Remove all the cells Remove all the cells excluse the specified range Reset the object to its original state. It is similar to the Clear method but doesn't call any events when removeing the saved positions, usually used when refreshing the cells with new data. To simply clear the object use the Clear method, only use this method when you want to force a reset of the object without calling additional methods. Add the specified cell and add the cell to the collection. Returns true if sucesfully added Remove from the collection the specified cell Returns true if sucesfully removed Add the specified Range of cells Returns true if sucesfully added Remove from the collection the specified range of cells Returns true if sucesfully removed Add the specified ranges of cells Remove the specified ranges of cells Prende un range che ?gi?stato filtrato con solo le celle non presenti nell'attuale range Prende un range che ?gi?stato filtrato con solo le celle presenti nell'attuale range Variabile che indica se lo stato interno della classe ?stato modificato, serve per poter ottimizzare alcune verifiche. Returns the range at the specific position Represents a rich text box Use default setting and construct a read and write VisualProperties Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Rotate flip type Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Gets or sets the IText visual element used to draw the cell rich text. Status of the CheckBox Constructor Constructor Enable or disable the checkbox Caption of the CheckBox Gets or sets the state of the check box. Gets or set Checked status. Return true for Checked, false for Uncheck and null for Undefined An editor that use a UITypeEditor to edit the cell. Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Create the editor control Gets the control used for editing the cell. An editor to support Currency data type An editor that use a TextBoxTypedNumeric for editing support. You can customize the Control.NumericCharStyle property to enable char validation. An editor that use a TextBoxTyped for editing support. Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Create the editor control This method is called just before the edit start. You can use this method to customize the editor with the cell informations. Set the specified value in the current editor control. Returns the value inserted with the current editor control Gets the control used for editing the cell. Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Create the editor control Gets the control used for editing the cell. Construct a Model. Based on the Type specified the constructor populate AllowNull, DefaultValue, TypeConverter, StandardValues, StandardValueExclusive The type of this model Notify PingGrid of value editing Default constructor Constructor Copy constructor Gets or sets the Image to draw. Default is null. Insert a row at the specified position Insert the specified number of rows at the specified position This class implements a RowsBase class using always the same Height for all rows. Using this class you must only implement the Count method. Summary description for VisualModelCheckBox. Use default setting Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Images of the cells A class used to cache the Pens used by the drawing methods. Use the GetPen method to retrive or insert new pens. Remember to call Dispose when you don't need anymore this class to release all graphics resources. Usually you don't need to use this class directly but you can acces it using the GraphicsCache class. Constructor A positive number that specify the capacity of the cache. Returns the existing Pen object if already exist in the cache, otherwise create it and store in the cache. If there aren't anymore free slots (count > capacity) the this method create the pen but don't store it in the cache. Dipose. Release the graphics resources. A collection of elements of type Position Represents a cell position (Row, Col). Once created connot be modified An empty index constant Constructor Empty position Returns true if the current struct is empty GetHashCode Returns a position with the smaller Row and the smaller column Returns a position with the bigger Row and the bigger column Row Column Summary description for VisualModelCheckBox. Represents a default CheckBox with the CheckBox image align to the Middle Center of the cell. You must use this VisualModel with a Cell of type ICellCheckBox. Represents a CheckBox with the CheckBox image align to the Middle Left of the cell Use default setting and construct a read and write VisualProperties Copy constructor. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Clone this object. This method duplicate all the reference field (Image, Font, StringFormat) creating a new instance. Image Alignment Gets or sets the visual element used to draw the checkbox. Default is DevAge.Drawing.VisualElements.CheckBoxThemed. Insert a string at the selection String to insert Sets the effect of the selected text. Change the font of the selected text. Get font of current selection Change the font of the selected text. Get font of current selection Get char offset of current selection Change char offset of the selected text. Set horizontal alignment of selected text. Get horizontal alignment of current selection Get real RichTextBox Control A cell header used for the columns. Usually used in the HeaderCell property of a DataGridColumn. Summary description for ListEditor. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Summary description for Manager. Gets or Sets the format used to save the DataSet Gets the current format of the File where the data are loaded. Gets or Sets if merge the schema of the file with the schema of the DataSet specified. Use true if the DataSet doesn't have a schema definition. Default is false. A TextBoxTypedButton that uase the UITypeEditor associated with the type. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Gets or sets the UITypeEditor to use. If you have specified a validator the TypeDescriptor.GetEditor method is used based on the Validator.ValueType. Default constructor Copy constructor Clone Standard header used when the XP style are disabled. Gets the System.Windows.Forms.VisualStyles.VisualStyleRenderer to draw the specified element. Grid print document. Cell view when printing. Header cell view when printing. Property if fixed rows should be repeated on each page. Return calculated page count. Represents a range of cells. Once created cannot be modified. This Range has always Start in the Top-Left, and End in the Bottom-Right (see Normalize method). Constructor Constructor Move the current range to the specified position, leaving the current ColumnsCount and RowsCount Construct a Range of a single cell Represents an empty range Check and fix the range to always have Start smaller than End Returns true if the specified row is present in the current range. Returns true if the specified column is present in the current range. Returns true if the specified cell position is present in the current range. Returns true if the specified range is present in the current range. Determines if the current range is empty Returns a range with the smaller Start and the bigger End. The Union of the 2 Range. If one of the range is empty then the return is the other range. Returns a range with the smaller Start and the bigger End. The Union of the 2 Range. If one of the range is empty then the return is the other range. Returns the intersection between the 2 Range. If one of the range is empty then the return is empty. Returns the intersection between the 2 Range. If one of the range is empty then the return is empty. Returns true if the specified range intersects (one or more cells) with the current range. If one of the range is empty then the return is false. Returns true if the specified range intersects (one or more cells) with the current range. If one of the range is empty then the return is false. Return all the cells that don't intersect with the specified cells. (Remove the specified cells from the current cells ad returns the remaining cells) Sets or Gets the columns count (End.Column-Start.Column) Sets or Gets the rows count (End.Row-Start.Row) Interface that rappresent a range of the grid. (RangeFullGridNoFixedRows, RangeFullGridNoFixedCols, RangeFixedRows, RangeFixedCols, Range) This class is used to calculate a real Range structure at runtime. Rectangle that contains the range. Represents a range that contains all the grid Constructor Returns the Range struct from the specific instance Represents a range that contains all the grid with no fixed rows Constructor Returns the Range struct from the specific instance Represents a range that contains all the grid with no fixed cols Constructor Returns the Range struct from the specific instance Represents a range that contains only fixed rows Constructor Returns the Range struct from the specific instance Represents a range that contains only fixed cols Constructor Returns the Range struct from the specific instance Range custom Constructor Returns the Range struct from the specific instance Gets or sets the Range loaded in the class. Selection Mode ContextMenuStyle (Flags) EditableMode Cell mode (Flags) No edit support Edit the cell with F2 key ( 1 ) Edit the cell with a double click (2) Edit a cell with a single Key (4) Edit the cell pressing any keys (8 + F2Key) Edit the cell when it receive the focus (16) DoubleClick + F2Key Type of resize of the cells (Flags) Special keys that the grid can handle. You can change this enum to block or allow some special keys function. (Flags) No keys Arrows keys, for moving focus cell operation Tab and Shift+Tab keys, for moving focus cell operation PageDown and PageUp keys, for page operation Enter key, for apply editing operation Escape key, for cancel editing operation Control key, for selection operations. Enables the selection of non adjacent cells Shift key, for selection operations. Enables the selection of the range from the focused cell to the selected cells. Default: Arrows|Tab|PageDownUp|Enter|Escape|Control|Shift Position type of the cell. Look at the .vsd diagram for details. Empty Cell Fixed Top+Left Cell Fixed Top Cell Fixed Left cell Scrollable Cell SelectionChangeEventType Add Remove Clear FocusStyle (Flags). Used to customize the style of the focus. Remove the focus cell when the grid lost the focus Remove the selection when the grid lost the focus Set the focus on the first cell when the grid receive the focus and there isnt' an active cell. Use the FocusFirstCell method. The default value for this flags: FocusStyle.FocusFirstCellOnEnter | FocusStyle.RemoveFocusCellOnLeave AutoSizeMode (Flags) Enable the AutoSize Enable the AutoSize only for visible view Enable Stretch operation If this flag is selected the Measure function returns always the minimum column/row size and don't calculate the real required size. This flag can be used to don't consider the content of a column/row Default: EnableAutoSize, EnableStretch SelectionBorderMode. Used with Grid.Selection.BorderMode property Don't draw a border around each selection range Draw a border around the range that contains the focus. Draw a border around the focusl cell Draw a border around the selection range only is there is only one range selected Like the UniqueRange enum but when there is more then one range set the range only on the FocusCell SelectionmaskStyle, used to customize the visual style of the selection mask. (Flags) None. No special flags Used to draw only initialized cells. If you have uninitialized cell (you don't create a cell for a specific position: grid[0,0] = null;) the selection mask is not drawed on this cell. Consider that with this flags the drawing method is more complex and slow.If you use this flag the border can only be set to FocusCell or None. Used to draw the selection over the the cells, usually used with a transparent backcolor drawed over the normal cell. If not set, each cells (View) draw the selection or focus backcolor inside the normal drawing code. Default value: None Enum used to specify the cut operation style. Used with the RangeData class. Cut disabled. Cut enabled, the data are removed from the source only when pasting it on the destination. Used usually with the drag and drop operations. Cut enabled, the data are removed immediately when cutting the data source. String trimming mode Copy using Ctrl+C Cut using Ctrl+X Paste using Ctrl+V Delete using Del key Optimize mode used when constructing the grid control. Optimize the grid for many rows Optimize the grid for many columns A container for the model classes. THe only required model is the Value model, that you can assign using the ValueModel property. Constructor Returns null if not exist A collection of elements of type IModel A Cell with a CheckBox. This Cell is of type bool. Constrcutor Construct a CellCheckBox class with caption and align checkbox in the MiddleLeft, using BehaviorModels.CheckBox.Default Checked status (equal to the Value property but returns a bool) Caption of the cell A collection of elements of type Cells.ICellVirtual Initializes a new empty instance of the CellBaseCollection class. Initializes a new instance of the CellBaseCollection class, containing elements copied from an array. The array whose elements are to be added to the new CellBaseCollection. Initializes a new instance of the CellBaseCollection class, containing elements copied from another instance of CellBaseCollection The CellBaseCollection whose elements are to be added to the new CellBaseCollection. Adds the elements of an array to the end of this CellBaseCollection. The array whose elements are to be added to the end of this CellBaseCollection. Adds the elements of another CellBaseCollection to the end of this CellBaseCollection. The CellBaseCollection whose elements are to be added to the end of this CellBaseCollection. Adds an instance of type Cells.ICellVirtual to the end of this CellBaseCollection. The Cells.ICellVirtual to be added to the end of this CellBaseCollection. Determines whether a specfic Cells.ICellVirtual value is in this CellBaseCollection. The Cells.ICellVirtual value to locate in this CellBaseCollection. true if value is found in this CellBaseCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this CellBaseCollection The Cells.ICellVirtual value to locate in the CellBaseCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the CellBaseCollection at the specified index The index at which the Cells.ICellVirtual is to be inserted. The Cells.ICellVirtual to insert. Removes the first occurrence of a specific Cells.ICellVirtual from this CellBaseCollection. The Cells.ICellVirtual value to remove from this CellBaseCollection. Returns an enumerator that can iterate through the elements of this CellBaseCollection. An object that implements System.Collections.IEnumerator. Gets or sets the Cells.ICellVirtual at the given index in this CellBaseCollection. Type-specific enumeration class, used by CellBaseCollection.GetEnumerator. Returns a string used for error description for a specified object. Usually used when printing the object for the error message when there is a conversion error. Interface for asyncronuos activity. Extend the IActivity interface Summary description for ImageNavigator. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Summary description for DropDownButton. Required designer variable. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. Clean up any resources being used. Required method for Designer support - do not modify the contents of this method with the code editor. DevAgeComboBox has a typed Value property and the validating features using the Validator property. Set the Validator property and then call the ApplyValidatorRules method. Check if the selected value is valid based on the current validator and returns the value. Loads the Items from the StandardValues and the DropDownStyle based on the parameters of the validator. Apply the current Validator rules. This method is automatically fired when the Validator change. Gets or sets a property to enable or disable the automatic format of the Text when validating the control. Default false. Gets or sets the Validator class useded to validate the value and convert the text when using the Value property. You can use the ApplyValidatorRules method to apply the settings of the Validator directly to the ComboBox, for example the list of values. Gets or sets the typed value for the control, using the Validator class. If the Validator is ull the Text property is used. Default constructor Copy constructor Clone A static class with drawing utilities functions Draw a rounded rectangle with the specified pen. Fill a rounded rectangle with the specified brush. Draw a 3D border inside the specified rectangle using a linear gradient border color. The width of the dark border The width of the light border Interpolate the specified number of times between start and end color Calculate the middle color between the start and the end color. Calculate a darker or lighter color using the source specified. A light of 1 is White, a light of -1 is black. All the other values are an interpolation from the source color. Converts the specified image to an array of byte using the specified format. Converts the specified byte array to an Image object. Create a disabled version of the image. The image to convert The Color of the background behind the image. The background parameter is used to calculate the fill color of the disabled image so that it is always visible against the background. Convert a SizeF structure to a Size structure rounding the value to the largest integer using Ceiling method. Item deletion event handler. Event sender. Event arguments. Event arguments for item deletion event.