31:
How can I use my own operators only

Expression1->AllowValueKeyword = false;
Expression1->AllowDefaultOperators = false;
Expression1->AddCustomOperator(L"+",TVariant("<b>+</b>"),TVariant("This is a new binary-operator"),TVariant(2));
Expression1->AddCustomOperator(L"xxx",TVariant("<b>xxx</b>"),TVariant("This is a new keyword"),TVariant(0));
Expression1->AddCustomOperator(L"yyy",TVariant("<b>yyy</b>"),TVariant("This is a unary-operator"),TVariant(1));
Expression1->AddCustomOperator(L"zzz",TVariant("<b>zzz</b>"),TVariant("This is a binary-operator"),TVariant(2));
Expression1->Text = L"xxx + yyy(100 zzz 200)";

30:
How can I add a new binary-operator

Expression1->AddCustomOperator(L"xxx",TVariant("<b>xxx</b>"),TVariant("This is a new binary-operator"),TVariant(2));
Expression1->Text = L"value + 100 xxx 200";

29:
How can I add a new unary-operator

Expression1->AddCustomOperator(L"xxx",TVariant("<b>xxx</b>"),TVariant("This is a new unary-operator"),TVariant(1));
Expression1->Text = L"value + xxx(100)";

28:
How can I add a new keyword

Expression1->AddCustomOperator(L"xxx",TVariant("<b>xxx</b>"),TVariant("This is a new keyword"),TVariant(0));
Expression1->Text = L"value + xxx";

27:
How can I disable all operators
Expression1->AllowValueKeyword = false;
Expression1->AllowDefaultOperators = false;

26:
How can I disable the value keyword
Expression1->AllowValueKeyword = false;

25:
Usage of and ( and operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"(value contains 1) and (value != 1)";

24:
Usage of or ( or operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"(value=1) or value=`string`";

23:
Usage of not ( not operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"not(value=1)";

22:
Usage of - ( subtraction operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value - 2";

21:
Usage of + ( addition operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value + 2";

20:
Usage of mod ( reminder operator )

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value mod 2";

19:
Usage of / (divide operator)

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value / 2";

18:
Usage of * (multiplicity operator)

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"2 * value";

17:
How can I get the word from cursor when user double clicks the control
// DblClick event - Occurs when the user double clicks the left mouse button over an object.
void __fastcall TForm1::Expression1DblClick(TObject *Sender,short   Shift,int   X,int   Y)
{
	OutputDebugString( L"Word: " );
	OutputDebugString( Expression1->WordFromPoint[-1,-1,TNoParam()] );
}

Expression1->Expression = L"value";
Expression1->AllowSplitter = Expressionlib_tlb::SplitterEnum::exVSplitter;
Expression1->SplitPaneHeight = 196;

16:
How do I determine the word from the cursor
// Click event - Occurs when the user presses and then releases the left mouse button over the list control.
void __fastcall TForm1::Expression1Click(TObject *Sender)
{
	OutputDebugString( L"Word: " );
	OutputDebugString( Expression1->WordFromPoint[-1,-1,TNoParam()] );
}

Expression1->Expression = L"value";
Expression1->SplitPaneHeight = 196;
Expression1->Background[Expressionlib_tlb::BackgroundPartEnum::exVSplitterApp] = RGB(240,240,240);
Expression1->AllowSplitter = Expressionlib_tlb::SplitterEnum::exVSplitter;

15:
How can I check if the expression is valid/syntactically correct
// Change event - Indicates that the control's text has changed.
void __fastcall TForm1::Expression1Change(TObject *Sender)
{
	OutputDebugString( L"Valid: " );
	OutputDebugString( PChar(Expression1->IsValid) );
}

Expression1->Expression = L"value";
Expression1->SplitPaneHeight = 196;
Expression1->Background[Expressionlib_tlb::BackgroundPartEnum::exVSplitterApp] = RGB(240,240,240);
Expression1->AllowSplitter = Expressionlib_tlb::SplitterEnum::exVSplitter;

14:
How can I change the visual appearance of the horizontal splitter

Expression1->Expression = L"value";
Expression1->SplitPaneHeight = 196;
Expression1->Background[Expressionlib_tlb::BackgroundPartEnum::exVSplitterApp] = RGB(240,240,240);
Expression1->AllowSplitter = Expressionlib_tlb::SplitterEnum::exVSplitter;

13:
How can I change the visual appearance of the vertical splitter

Expression1->Expression = L"value";
Expression1->SplitPaneWidth = 196;
Expression1->Background[Expressionlib_tlb::BackgroundPartEnum::exHSplitterApp] = RGB(240,240,240);

12:
How can I add a new menu-item to control's context menu
// ExecuteContextMenu event - Occurs when the user selects an user item from the control's context menu.
void __fastcall TForm1::Expression1ExecuteContextMenu(TObject *Sender,BSTR   Item,long   Position)
{
	OutputDebugString( L"ExecuteContextMenu: " );
	OutputDebugString( L"Item" );
}

Expression1->Expression = L"value + 100";
Expression1->ContextMenuItems = L"Test";

11:
How can I change the tooltip that shows when cursor hovers a keyword

Expression1->Expression = L"value";
Expression1->Description[Expressionlib_tlb::KeywordEnum::exKeywordValue] = L"This is a bit of text to be shown when cursor hovers the <b>value</b> keyword.";
Expression1->Refresh();

10:
How do I check if the expression is correct
Expression1->Expression = L"currency(value)";
OutputDebugString( PChar(Expression1->IsValid) );

9:
How do I programmatically evaluate the expression
Expression1->Expression = L"currency(value)";
OutputDebugString( PChar(Expression1->Evaluate[TVariant("value=100")]) );

8:
How can I assign multiple values for variables %1, %2, ...

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"currency(%1 + %2)";
Expression1->EvaluationText = L"%1 = 100;%2 = 200";

7:
How can I change the values to show the result
Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"currency(value)";
Expression1->EvaluationText = L"value = 100";

6:
How can I prevent changing the color when expression is invalid
Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value 2";
Expression1->ForeColorInvalid = RGB(0,0,0);

5:
How can I change the color when expression is invalid
Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value 2";
Expression1->ForeColorInvalid = RGB(255,0,0);

4:
How can I prevent evaluation the selection

Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value + 1";
Expression1->EvaluateSelection = false;
Expression1->HideSelection = false;
Expression1->SelLength = 1;

3:
How can I programatically show the result
Expression1->SplitPaneWidth = 196;
Expression1->Expression = L"value";

2:
How can I get ride of the right-vertical line/split
Expression1->AllowSplitter = Expressionlib_tlb::SplitterEnum::exNoSplitter;
Expression1->Expression = L"value + 1";

1:
How can I change the control's background
Expression1->Expression = L"value";
Expression1->BackColor = RGB(240,240,240);