ITabCellStyle.ActivationEditorMode

Syntax

ActivationEditorMode: TabActivationEditorMode;

ActivationEditorMode: Prognoz.Platform.Interop.Tab.TabActivationEditorMode;

Description

The ActivationEditorMode property determines cell editor activation type.

Comments

To determined value editor settings, use the ITabCellStyle.Binding property.

If the value editor is not set for the cell, the editor corresponding to cell data type is activated.

Example

Executing the example requires that the repository contains a regular report with the REPORT_ACT_EDITOR identifier.

Add links to the Metabase, Report, Tab system assemblies.

Sub UserProc;
Var
    mb: IMetabase;
    Report: IPrxReport;
    BM: IBindingManager;
    ComboBoxBinding: IBindingComboBox;
    Tab: ITabSheet;
    Style, UStyle: ITabCellStyle;
Begin
    
// Get current repository
    mb := MetabaseClass.Active;
    
// Get regular report
    Report := mb.ItemById("REPORT_ACT_EDITOR").Edit As IPrxReport;
    
// Create and set up value editor as a drop-down list
    BM := New BindingManager.Create;
    ComboBoxBinding := BM.CreateByUi(
"ComboBox"As IBindingComboBox;
    ComboBoxBinding.Items := 
"1;2;3;4;5";
    ComboBoxBinding.ListMode := 
True;
    ComboBoxBinding.Separators := 
";";
    ComboBoxBinding.Value := 
"3";
    
// Get cell style in the top left corner of available report sheet
    Tab := (Report.ActiveSheet As IPrxTable).TabSheet;
    Style := Tab.Cell(
00).Style;
    
// Specify that created value editor is used for cell
    Style.Binding := ComboBoxBinding.AsString;
    
// Specify that editor is activated if cell gets focus
    Style.ActivationEditorMode := TabActivationEditorMode.OnFocus;
    
// Get style of the other cell of report active sheet
    UStyle := Tab.Cell(11).Style;
    
// Set that cell will not be selected
    UStyle.Unselectable := TriState.OnOption;
    
// Save changes
    (Report As IMetabaseObject).Save;
End Sub UserProc;

Imports Prognoz.Platform.Interop.ForeSystem;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    Report: IPrxReport;
    BM: IBindingManager;
    ComboBoxBinding: IBindingComboBox;
    Tab: ITabSheet;
    Style, UStyle: ITabCellStyle;
Begin
    
// Get current repository
    mb := Params.Metabase;
    
// Get regular report
    Report := mb.ItemById["REPORT_ACT_EDITOR"].Edit() As IPrxReport;
    
// Create and set up value editor as a drop-down list
    BM := New BindingManager.Create();
    ComboBoxBinding := BM.CreateByUi(
"ComboBox"As IBindingComboBox;
    ComboBoxBinding.Items := 
"1;2;3;4;5";
    ComboBoxBinding.ListMode := 
True;
    ComboBoxBinding.Separators := 
";";
    ComboBoxBinding.Value := 
"3";
    
// Get cell style in the top left corner of available report sheet
    Tab := (Report.ActiveSheet As IPrxTable).TabSheet;
    Style := Tab.Cell[
00].Style;
    
// Specify that created value editor is used for cell
    Style.Binding := ComboBoxBinding.AsString;
    
// Specify that editor is activated if cell gets focus
    Style.ActivationEditorMode := TabActivationEditorMode.taemOnFocus;
    
// Get style of the other cell of report active sheet
    UStyle := Tab.Cell(11).Style;
    
// Set that cell will not be selected
    UStyle.Unselectable := TriState.tsOnOption;
    
// Save changes
    (Report As IMetabaseObject).Save();
End Sub;

After executing the example the value editor is set up for the cell as a drop-down list in the top left corner of the available report sheet. This editor is activated when the cell gets focus. On viewing the report, on selecting the cells, one cell will not be selected.

See also:

ITabCellStyle