31:
How can I use my own operators only

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AllowValueKeyword = false;
	Expression1.AllowDefaultOperators = false;
	Expression1.AddCustomOperator("+","<b>+</b>","This is a new binary-operator",2);
	Expression1.AddCustomOperator("xxx","<b>xxx</b>","This is a new keyword",0);
	Expression1.AddCustomOperator("yyy","<b>yyy</b>","This is a unary-operator",1);
	Expression1.AddCustomOperator("zzz","<b>zzz</b>","This is a binary-operator",2);
	Expression1.Text = "xxx + yyy(100 zzz 200)";
}
</SCRIPT>
</BODY>

30:
How can I add a new binary-operator

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AddCustomOperator("xxx","<b>xxx</b>","This is a new binary-operator",2);
	Expression1.Text = "value + 100 xxx 200";
}
</SCRIPT>
</BODY>

29:
How can I add a new unary-operator

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AddCustomOperator("xxx","<b>xxx</b>","This is a new unary-operator",1);
	Expression1.Text = "value + xxx(100)";
}
</SCRIPT>
</BODY>

28:
How can I add a new keyword

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AddCustomOperator("xxx","<b>xxx</b>","This is a new keyword",0);
	Expression1.Text = "value + xxx";
}
</SCRIPT>
</BODY>

27:
How can I disable all operators
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AllowValueKeyword = false;
	Expression1.AllowDefaultOperators = false;
}
</SCRIPT>
</BODY>

26:
How can I disable the value keyword
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AllowValueKeyword = false;
}
</SCRIPT>
</BODY>

25:
Usage of and ( and operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "(value contains 1) and (value != 1)";
}
</SCRIPT>
</BODY>

24:
Usage of or ( or operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "(value=1) or value=`string`";
}
</SCRIPT>
</BODY>

23:
Usage of not ( not operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "not(value=1)";
}
</SCRIPT>
</BODY>

22:
Usage of - ( subtraction operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value - 2";
}
</SCRIPT>
</BODY>

21:
Usage of + ( addition operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value + 2";
}
</SCRIPT>
</BODY>

20:
Usage of mod ( reminder operator )

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value mod 2";
}
</SCRIPT>
</BODY>

19:
Usage of / (divide operator)

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value / 2";
}
</SCRIPT>
</BODY>

18:
Usage of * (multiplicity operator)

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "2 * value";
}
</SCRIPT>
</BODY>

17:
How can I get the word from cursor when user double clicks the control
<BODY onload="Init()">
<SCRIPT FOR="Expression1" EVENT="DblClick(Shift,X,Y)" LANGUAGE="JScript">
	alert( "Word: " );
	alert( Expression1.WordFromPoint(-1,-1,null) );
</SCRIPT>

<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.AllowSplitter = 2;
	Expression1.SplitPaneHeight = 196;
}
</SCRIPT>
</BODY>

16:
How do I determine the word from the cursor
<BODY onload="Init()">
<SCRIPT FOR="Expression1" EVENT="Click()" LANGUAGE="JScript">
	alert( "Word: " );
	alert( Expression1.WordFromPoint(-1,-1,null) );
</SCRIPT>

<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.SplitPaneHeight = 196;
	Expression1.Background(1) = 15790320;
	Expression1.AllowSplitter = 2;
}
</SCRIPT>
</BODY>

15:
How can I check if the expression is valid/syntactically correct
<BODY onload="Init()">
<SCRIPT FOR="Expression1" EVENT="Change()" LANGUAGE="JScript">
	alert( "Valid: " );
	alert( Expression1.IsValid );
</SCRIPT>

<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.SplitPaneHeight = 196;
	Expression1.Background(1) = 15790320;
	Expression1.AllowSplitter = 2;
}
</SCRIPT>
</BODY>

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

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.SplitPaneHeight = 196;
	Expression1.Background(1) = 15790320;
	Expression1.AllowSplitter = 2;
}
</SCRIPT>
</BODY>

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

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.SplitPaneWidth = 196;
	Expression1.Background(0) = 15790320;
}
</SCRIPT>
</BODY>

12:
How can I add a new menu-item to control's context menu
<BODY onload="Init()">
<SCRIPT FOR="Expression1" EVENT="ExecuteContextMenu(Item,Position)" LANGUAGE="JScript">
	alert( "ExecuteContextMenu: " );
	alert( Item );
</SCRIPT>

<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value + 100";
	Expression1.ContextMenuItems = "Test";
}
</SCRIPT>
</BODY>

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

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.Description(0) = "This is a bit of text to be shown when cursor hovers the <b>value</b> keyword.";
	Expression1.Refresh();
}
</SCRIPT>
</BODY>

10:
How do I check if the expression is correct
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "currency(value)";
	alert( Expression1.IsValid );
}
</SCRIPT>
</BODY>

9:
How do I programmatically evaluate the expression
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "currency(value)";
	alert( Expression1.Evaluate("value=100") );
}
</SCRIPT>
</BODY>

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

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "currency(%1 + %2)";
	Expression1.EvaluationText = "%1 = 100;%2 = 200";
}
</SCRIPT>
</BODY>

7:
How can I change the values to show the result
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "currency(value)";
	Expression1.EvaluationText = "value = 100";
}
</SCRIPT>
</BODY>

6:
How can I prevent changing the color when expression is invalid
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value 2";
	Expression1.ForeColorInvalid = 0;
}
</SCRIPT>
</BODY>

5:
How can I change the color when expression is invalid
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value 2";
	Expression1.ForeColorInvalid = 255;
}
</SCRIPT>
</BODY>

4:
How can I prevent evaluation the selection

<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value + 1";
	Expression1.EvaluateSelection = false;
	Expression1.HideSelection = false;
	Expression1.SelLength = 1;
}
</SCRIPT>
</BODY>

3:
How can I programatically show the result
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.SplitPaneWidth = 196;
	Expression1.Expression = "value";
}
</SCRIPT>
</BODY>

2:
How can I get ride of the right-vertical line/split
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.AllowSplitter = 0;
	Expression1.Expression = "value + 1";
}
</SCRIPT>
</BODY>

1:
How can I change the control's background
<BODY onload="Init()">
<OBJECT CLASSID="clsid:B33F5489-49AC-4155-98E7-9BBFC57FF019" id="Expression1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
function Init()
{
	Expression1.Expression = "value";
	Expression1.BackColor = 15790320;
}
</SCRIPT>
</BODY>