property Edit.MarkColor(Expression as String) as Color
Specifies a color being used to mark the position of the expression, on the control's vertical scroll bar.

 TypeDescription 
   Expression as String A string expression that indicates the expression being accessed. The Expression parameter must not include the HTML tags like it is passed to the AddExpression or AddKeyword method.  
   Color A color expression that defines the marking color on the control's vertical scroll bar.  
Use the MarkColor property to specify a marking color on the control's vertical scroll bar for an expression/keyword. The MarkColor property has effect only if the AllowMark property is True. You can add multiple expressions to be marked on the control's vertical scroll bar. Use the AddKeyword to add new keywords to the control's context. Use the AddExpression to add new expressions to the control. Use the Expression = "" to clear all the marking colors. Use the MarkContinueBlocks property to mark multiple lines block.

The following sample defines the // TODO expression, and marks on the control's vertical scroll bar each position of the // TODO expression in the control's text:

With Edit1
    .AllowMark = True
    .AddExpression "<fgcolor=000080>// TODO</fgcolor>", "<b><fgcolor=000080> </fgcolor></b>", ""
    .MarkColor("// TODO") = RGB(0, 0, &H80)
    .Refresh
End With

As you can see from the following screen shot, there are lines ( on the control's vertical scroll bar ) that marks the position for each // TODO expression in the text.

The following C++ sample marks the position of the // TODO expressions on the control's vertical scroll bar:

COleVariant vtMissing; vtMissing.vt = VT_ERROR;
m_edit.SetAllowMark( TRUE );
m_edit.AddExpression("<fgcolor=000080>// TODO</fgcolor>", "<fgcolor=000080> </fgcolor>", "", vtMissing, vtMissing );
m_edit.SetMarkColor("// TODO", RGB(0, 0, 0x80) );
m_edit.Refresh();

The following VB.NET sample marks the position of the // TODO expressions on the control's vertical scroll bar:

With AxEdit1
    .AllowMark = True
    .LineNumberWidth = -1
    .AddExpression("<fgcolor=000080>// TODO</fgcolor>", "<b><fgcolor=000080> </fgcolor></b>", "")
    .set_MarkColor("// TODO", ToUInt32(Color.FromArgb(0, 0, &H80)))
    .CtlRefresh()
End With

where the ToUInt32 function converts a Color expression to an OLE_COLOR expressions:

Shared Function ToUInt32(ByVal c As Color) As UInt32
    Dim i As Long
    i = c.R
    i = i + 256 * c.G
    i = i + 256 * 256 * c.B
    ToUInt32 = Convert.ToUInt32(i)
End Function

The following C# sample marks the position of the // TODO expressions on the control's vertical scroll bar:

axEdit1.AllowMark = true;
axEdit1.AddExpression("<fgcolor=000080>// TODO</fgcolor>", "<b><fgcolor=000080> </fgcolor></b>", "");
axEdit1.set_MarkColor("// TODO", ToUInt32(Color.FromArgb(0, 0, 0x80)));
axEdit1.CtlRefresh();

where the ToUInt32 function converts a Color expression to an OLE_COLOR expressions:

private UInt32 ToUInt32(Color c)
{
	long i;
	i = c.R;
	i = i + 256 * c.G;
	i = i + 256 * 256 * c.B;
	return Convert.ToUInt32(i);
}

The following VFP sample marks the position of the // TODO expressions on the control's vertical scroll bar:

With thisform.Edit1.Object
	.AllowMark = .t.
	.AddExpression("<fgcolor=000080>// TODO</fgcolor>", "<b><fgcolor=000080> </fgcolor></b>", "")
	.MarkColor("// TODO") = RGB(0, 0, 128)
	.Refresh
EndWith
 


Send comments on this topic.
1999-2016 Exontrol.COM, Software. All rights reserved.