open pdf and draw c# : Clickable links in pdf from word control application utility azure web page html visual studio TMS%20TAdvStringGrid%20Developers%20Guide5-part153

TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
51 | Page 
TAdvStringGrid mouse and navigation control 
Extensive control is available for controlling navigation with keyboard and mouse in the grid and 
control of automatic key triggered actions such as clipboard handling. These settings are available 
through the grid.Navigation and grid.MouseActions properties. 
Navigation properties 
AdvanceAuto: Boolean; 
When true, editing with masked inplace edit 
automatically advances to the next cell when the 
mask has been completed. 
AdvanceAutoEdit: Boolean; 
When true, after pressing return to advance the 
inplace editor to the next cell, this cell is 
automatically put into editing mode. 
AdvanceDirection: TAdvanceDirection; 
Sets the directorion of the auto advance upon 
pressing Enter or Return to following values: 
adTopBottom: move from top row to bottom row 
and then move to next column.  
adTopBottomInCol: move from top row to bottom 
row and then move to top row again in same 
column. 
adLeftRight: move from left to right and then 
move to next row. 
adLeftRightInRow: move from left to right and 
then move to back to first cell in same row.  
AdvanceInsert: Boolean; 
When true, pressing enter on the last cell of the 
last row automatically inserts a new row or a new 
column (depending on AdvanceDirection). When a 
new row is inserted, the OnCanAddRow event is 
triggered first followed by the event 
OnAutoInsertRow. When a new column is inserted, 
the OnCanAddCol event is triggered followed by 
OnAutoInsertCol. 
AdvanceOnEnter: Boolean; 
When true, pressing Return or Enter automatically 
advances to the next cell. The direction of the 
auto advance is controlled by the 
AdvanceDirection property 
AdvanceOnEnterLoop: Boolean; 
When true, the grid will automatically advance 
back to the first (top/left) normal cell of the grid 
when Enter is pressed on the last (bottom/right) 
cell. 
AdvanceSkipReadOnlyCells: Boolean; 
When AdvanceEnter = true and the Enter key is 
pressed, by default readonly cells are skipped and 
the next editable cell is focused and set in edit 
mode. When AdvanceSkipReadOnlyCells is false, 
when the next logical cell is readonly, focus just 
Clickable links in pdf from word - insert, remove PDF links in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Free C# example code is offered for users to edit PDF document hyperlink (url), like inserting and deleting
convert a word document to pdf with hyperlinks; add hyperlink in pdf
Clickable links in pdf from word - VB.NET PDF url edit library: insert, remove PDF links in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Help to Insert a Hyperlink to Specified PDF Document Page
add hyperlink pdf; add links to pdf online
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
52 | Page 
moves to the readonly cell. 
AllowClipboardAlways: Boolean; 
Allows clipboard actions irrespective of cells being 
read-only 
AllowClipboardColGrow: Boolean; 
When true, the number of columns in the grid can 
grow if more columns are pasted than already 
present in the grid 
AllowClipboardRowGrow: Boolean; 
When true, the number of rows in the grid can 
grow if more rows are pasted than already 
present in the grid 
AllowClipboardShortCuts: Boolean; 
When true, pressingCtrl-Ins, Shift-Ins, Shift-Del, 
Ctrl-X, Ctrl-V, Ctrl-C automatically triggers the 
clipboard handling. Unless AllowClipboardAlways 
is set true, clipboard actions are only applied on 
editable cells.  
AllowCtrlEnter: Boolean; 
When true, pressing Ctrl-Enter will add a line 
break in an inplace editor. 
AllowDeleteRow: Boolean; 
When true, pressing the Del key removes a row. 
The OnAutoDeleteRow event is triggered. 
AllowFmtClipboard: Boolean; 
Allows copy and paste of both cell text and cell 
properties in TAdvStringGrid or between multiple 
TAdvStringGrid controls.  
AllowInsertRow: Boolean; 
When true, pressing the Ins key inserts a new row. 
The OnAutoInsertRow event is triggered. The 
position of the inserted row is controlled by the 
InsertPosition property. 
AllowRTFClipboard: Boolean; 
Allows copy and paste of rich text in the grid 
AllowSmartClipboard: Boolean; 
When true, pasting automatically completes 
ranges in selected cells. If for example 2 cells are 
copied on the clipboard with values ‘1’ and ‘2’, 
pasting this in 10 cells will paste as 
‘1’,’2’,’3’…’10’ 
AlwaysEdit: Boolean; 
When true, the inplace editor is always visible. 
When this behaviour is wanted, this needs to be 
set true instead of the TStringGrid 
goAlwaysShowEditor in grid.Options 
AppendOnArrowDown: Boolean; 
When true, pressing the down arrow on the last 
row of the grid will automatically insert a new 
row. 
AutoComboDropSize: Boolean; 
When true, the combobox dropdown size 
automatically adapts to the largest string in the 
C# TIFF: How to Convert TIFF File to PDF Document in C# Project
Standardization (ISO). Clickable links and buttons, form fields and video can be inserted into a PDF file without quality loss. Documents, forms
pdf edit hyperlink; add hyperlink to pdf acrobat
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
53 | Page 
combobox 
AutoComboSelect: Boolean; 
Determines whether the combobox used as 
inplace editor for a cell is shown with the cell 
value immediately as selected item in the 
dropdown or not. 
AutoGotoIncremental: Boolean; 
Can be used combined with AutoGotoWhenSorted 
where the lookup for text is incremental, i.e. the 
search refines with each character typed. 
AutoGotoWhenSorted: Boolean; 
When true, typing a character automatically 
moves the current cell to the first cell that starts 
with character typed. This applies for pressing 
characters in sorted columns only. 
ClipboardCutAction: TClipboardCutAction; 
Value can be set to caClear to just clear the cells 
where a cut is performed or caRemove to remove 
rows completely from the grid (in case row 
selection is enabled). 
ClipboardPasteAction: TClipboardPasteAction; 
Value can be set to paReplace or paInsert. When 
ClipboardPasteAction is paReplace, cells are 
replaced from the top left corner with pasted cell 
values. When ClipboardPasteAction is paInsert, 
cells are inserted in the grid from the top, left 
selected cell. 
CopyHTMLTagsToClipboard: Boolean; 
When true, HTML tags are also copied on the 
clipboard 
CursorAdvance: TCursorAdvance; 
This can be any of the following 3 values: 
caDefault, caSnaak, caLoop.  
caDefault: This is the default setting, this means 
that when the arrow keys are pressed and the 
first/last row/column of the grid is reached, 
navigation stops. 
caLoop: This means that when the arrow key is 
pressed on first/last cells of a column/row, the 
active cells moves to the last/first cell of this 
column/row. 
caSnake: This means that when the arrow key is 
pressed on first/last cells of a column/row, the 
active cells moves to the last/first cell of the next 
column/row. 
CursorMoveRows: Boolean; 
When true, pressing Ctrl and arrow up or down 
moves the selected row or rows up or down. 
CursorWalkAlwaysEdit: Boolean; 
Controls whether the inplace editor of the next 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
54 | Page 
cell after pressing left / right is automatically put 
in edit mode or not 
CursorWalkEditor: Boolean; 
When true, pressing cursor left key if caret is on 
first character position moves to previous cell, 
pressing cursor right key when caret is on last 
character position moves to the next cell 
EditSelectAll: Boolean;  
When true, all text is selected when the inplace 
editor starts. Otherwise, no text is selected and 
the caret is after the last character position. 
HomeEndKey: THomeEndAction; 
Defines the behaviour of Home and End key as 
either going to top/bottom row or left rightmost 
column 
ImproveMaskSel: Boolean; 
Automatically positions entry on first editable 
character of the mask edit instead of selecting 
the full mask 
InsertPosition: TInsertPosition; 
Determines if a row is inserted before or after the 
current row when Ins is pressed and 
AllowInsertRow is True 
KeepHorizScroll: Boolean; 
When true, navigating up or down in the grid with 
a horizontally scrolled grid keeps this horizontal 
scroll instead of scrolling back to leftmost position 
KeepScrollOnSort: Boolean; 
When true, the horizontal scroll position is not 
changed when the grid is sorted by clicking on a 
column header. When false, the horizontal scroll 
position is reset to the leftmost position. 
LeftRightRowSelect: Boolean; 
When true, the default behaviour applies and if 
row selection is enabled, pressing left/right arrow 
keys change the selected row. When false, 
left/right arrow keys change the horizontal scroll 
LineFeedOnEnter: Boolean; 
When true, pressing Ctrl-Enter adds a linefeed in 
the cell instead of stopping the inplace edit 
MoveRowOnSort: Boolean; 
When true, the current selected row remains in 
focus after sort 
MoveScrollOnly: Boolean; 
When true, only the scroll position in the grid 
changes when pressing keys 
Up,Down,Next,Prior,Home,End. When false, it is 
the selection that changes in the grid for these 
keys. 
SkipFixedCells: Boolean; 
When true, using the arrow keys to move the 
selected cell will let the selection jump over fixed 
(non-selectable) cells in the grid. 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
55 | Page 
TabAdvanceDirection: TAdvanceDirection; 
Sets the directorion of the auto advance upon 
pressing Tab to either adTopLeft or adLeftRight. 
Note that goTabs must be set true in grid.Options 
to allow tab keys in the grid.  
TabToNextAtEnd: Boolean; 
When true and goTabs is set True in grid.Options, 
after tabbing inside the grid to the last cell, the 
focus moves to the next control 
MouseActions properties 
AllColumnSize: Boolean; 
When true, resizing one column resizes all columns 
proportionally. Note that goColSizing needs to be set 
to True in grid.Options for this 
AllRowSize: Boolean; 
When true, resizing one row resizes all rows 
proportionally. Note that goRowSizing needs to be 
set to True in grid.Options for this 
AllSelect: Boolean; 
When true, all cells can be selected by clicking in 
the topleft fixed cell 
AutoFocus: Boolean; 
When true, the grid automatically gains focus when 
the mouse hovers the grid 
AutoSizeColOnDblClick: Boolean; 
When true, a double click on the column edge will 
autosize the column to the text width. 
CaretPositioning: Boolean; 
When true, clicking a cell to start inplace editing 
automatically positions the caret on the position 
where the mouse click happened to start editing 
CheckAllCheck: Boolean; 
When true, a checkbox click in the top fixed row will 
automatically set all checkboxes in the column 
below to the same setting as the top checkbox. 
ColSelect: Boolean; 
When true, a full column can be selected by clicking 
a column header cell 
DirectComboClose: Boolean; 
When true, the combobox inplace editing 
automatically ends when its dropdown is closed. 
DirectComboDrop: Boolean; 
When true, clicking on a cell with combobox inplace 
editor immediately causes a dropdown of the 
combobox 
DirectDateClose: Boolean; 
When true, the datepicker inplace editing 
automatically ends when its dropdown calendar is 
closed. 
DirectDateDrop: Boolean; 
When true, clicking on a cell with datepicker inplace 
editor immediately causes a dropdown of the 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
56 | Page 
calendar. 
DirectEdit: Boolean; 
When true, clicking a cell immediately starts editing 
instead of first selecting the cell and entering edit 
mode after another mouse click. 
DisjunctCellSelect: Boolean; 
When true, allows selection of disjunct cells through 
Ctrl + left mouse click. The list of disjunct selected 
cells can be obtained with the SelectedCell[Index: 
Integer]: TGridCoord property where 
SelectedCellCount is returning the number of 
selected cells. 
DisjunctColSelect: Boolean; 
When true, allows selection of disjunct columns 
through Ctrl + left mouse click. The selectionstate of 
columns can be obtained through 
grid.ColSelect[ARow: Integer]: Boolean 
DisjunctRowSelect: Boolean; 
When true, allows selection of disjunct rows through 
Ctrl + left mouse click. The selectionstate of rows 
can be obtained through grid.RowSelect[ARow: 
Integer]: Boolean 
DisjunctRowSelectNoCtrl: Boolean; 
When true and combined with DisjunctRowSelect = 
true, disjunct row selection is possible without 
keeping the Ctrl key down. 
EditOnDblClickOnly: Boolean; 
When true, the inplace editing is only started when 
double clicking on a cell. Otherwise, the editing is 
started by default upon a single click in a selected 
cell. 
FixedColsEdit: TGridFixedCellEdit; 
Selects the type of action needed to start the editor 
for the fixed column 
FixedColsEditor: TGridFixedCellEditor; 
Sets the type of fixed cell editor: a normal editor, 
editable combobox or combobox list 
FixedRowsEdit: TGridFixedCellEdit; 
Selects the type of action needed to start the editor 
for the fixed row 
FixedRowsEditor: TGridFixedCellEditor; 
Sets the type of fixed cell editor: a normal editor, 
editable combobox or combobox list 
HotmailRowSelect: Boolean; 
When true, row selection can be done through clicks 
on the checkbox in the first fixed column. 
MoveRowOnNodeClick: Boolean; 
When true, clicking on a node also moves the 
selected cell or row to the row where the node is 
positioned. 
NoAutoRangeScroll: Boolean; 
When true, scrolling range selection is not 
automatically started when clicking a half visible 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
57 | Page 
cell at bottom or right side of the grid 
NodeAllExpandContract: Boolean; 
When true, a node in the top fixed row will expand 
or collaps all nodes in the column below the fixed 
cell. 
NoScrollOnPartialCol: Boolean; 
When true, the grid is not automatically scroll to 
bring a partially visible column in view that is 
clicked. 
NoScrollOnPartialRow: Boolean; 
When true, the grid is not automatically scroll to 
bring a partially visible row in view that is clicked. 
PartialScrollDelta: Integer; 
Sets the nr. of rows / columns to scroll when the 
user clicks on a partially visible column or row. 
PreciseCheckBoxCheck: Boolean; 
When true, a checkbox will only toggle when the 
mouse is over the checkbox, otherwise the checkbox 
will toggle for a click anywhere in the cell. 
RangeSelectAndEdit: Boolean; 
When true, range selection and editing style 
(goRangeSelect and goEditing in grid.Options) can be 
combined 
RowSelect: Boolean; 
When true, a full row can be selected by clicking a 
row header cell 
RowSelectPersistent: Boolean; 
When true, in a grid with disjunct selected rows 
with nodes, the selection of rows is persisted when 
nodes collaps or expand. 
SelectOnRightClick: Boolean; 
When true, the mouse right-click button operates 
just like the left button to select a cell 
SizeFixedCol: Boolean; 
Allows sizing with mouse of the first fixed column(s) 
which otherwise cannot be sized when goColSizing is 
True in grid.Options 
SizeFixedRow: Boolean; 
Allows sizing with mouse of the first fixed row(s) 
which otherwise cannot be sized when goRowSizing 
is True in grid.Options 
TouchScroll: Boolean; 
When true, scrolling can be done by touch and drag 
and inertia scrolling will be performed upon 
mouse/touch release 
WheelAction: TWheelAction 
Selects whether a mouse wheel move will scroll the 
grid or move the selection in the grid. 
WheelActive: TWheelActive 
Sets whether the mouse wheel affects grid scrolling 
when the grid has focus (waFocus) or only when the 
mouse is over the grid when it has focus 
(waMouseOver). 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
58 | Page 
WheelIncrement: integer 
Selects the number of rows to move for a mouse 
wheel movement. When zero, the default number as 
configured in Windows is used. 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
59 | Page 
TAdvStringGrid column sizing 
When goColSizing is set to true in grid.Options, the columns can be resized by dragging the 
separators between column header cells. The column size can be programmatically set & retrieved 
via grid.ColWidths[ColumnIndex]: integer; 
Various other options exist that relate to column size and control its behavior. Options are grouped 
under grid.ColumnSize class property: 
grid.ColumnSize.Key: string; 
Sets either the registry key or the INI file name where 
column widths can be persisted. 
grid.ColumnSize.Location: 
TColumnSizeLocation; 
Specifies whether column sizes will be persisted in the 
registry or an INI file. 
grid.ColumnSize.Rows: TAutoSizeRows;  
Specifies what rows of a column to take in account for 
auto column size calculation. This can be all rows 
(arAll: i.e. normal rows + fixed rows), only normal rows 
(arNormal) or only fixed rows (arFixed). 
grid.ColumnSize.Save 
When true, column widths are automatically persisted 
in either the INI file or the registry. 
grid.ColumnSize.Section:  
Specifies the INI file section or registry node name 
where values are persisted 
grid.ColumnSize.Stretch:  
When true, the width of one or more columns is 
automatically adapted to fill the entire grid client 
rectangle. When the total column widths already 
exceed the client width, nothing will change. By 
default, grid.ColumnSize.StretchColumn = -1 and this 
means that the rightmost column will be the column 
that is stretched. 
grid.ColumnSize.StretchAll:  
When true, all columns are stretched to fill the grid 
client width in an equidistant way 
grid.ColumnSize.StretchColumn:  
Sets the index of the column to be stretched. By 
default this is -1 to let the rightmost column stretch. 
grid.ColumnSize.SynchWithGrid:  
When true, the columns are proportionally sized with 
the grid when the grid’s client width changes. 
TMS SOFTWARE  
TADVSTRINGGRID  
DEVELOPERS GUIDE 
60 | Page 
TAdvStringGrid styles 
The grid has various built-in options to define its style. There is a design-time gallery of styles that 
is available from the design-time context menu: 
From here, a wide range of Office, Windows and custom styles are available. Styles can also be set 
at runtime. The TAdvStringGrid is compliant to the TMS styles interface. This means that with a 
TAdvFormStyler on the form, setting the style on this component will automatically change the style 
of all TMS components on the form that are TMS style interface compliant and thus also 
TAdvStringGrid. This means that with a single property, all TMS components on the form can adapt 
to the same consistent style. (TAdvFormStyler/TAdvAppStyler are part of the TMS Component Pack: 
http://www.tmssoftware.com/site/tmspack.asp and the style mechanism is explained at 
http://www.tmssoftware.com/site/atbdev3.asp) Also without this TAdvFormStyler, it is easy to 
programmatically set the style for TAdvStringGrid. Add the unit AdvStyleIF to the uses list and the 
style can be set via: 
grid.SetComponentStyle(AStyle: TTMSStyle); 
TTMSStyle is defined as: 
// color schemes consistent with Office 2003 
tsOffice2003Blue,  
tsOffice2003Silver,  
tsOffice2003Olive,  
tsOffice2003Classic, 
// color schemes consistent with Office 2007 
tsOffice2007Luna,  
tsOffice2007Obsidian,  
tsOffice2007Silver, 
// color schemes consistent with Office 2010 
tsOffice2010Blue, 
Documents you may be interested
Documents you may be interested