Skip to main content

LookUpEditSearchHighlightEventArgs.SetHighlightRanges(Func<String, String, DisplayTextHighlightRange[]>) Method

Sets specific highlight ranges.

Namespace: DevExpress.XtraEditors.Controls

Assembly: DevExpress.XtraEditors.v23.2.dll

NuGet Package: DevExpress.Win.Navigation

Declaration

public void SetHighlightRanges(
    Func<string, string, DisplayTextHighlightRange[]> getRangesFromDisplayTextAndFieldName
)

Parameters

Name Type Description
getRangesFromDisplayTextAndFieldName Func<String, String, DevExpress.Data.DisplayTextHighlightRange[]>

A function that must return a highlight ranges’ array. A highlight range is a structure that contains the first hightlighted char position, and the length of highlighted charecters’ sequence.

Remarks

The example below illustrates how to highlight all “Ship Country” and “Ship City” field values if they start with a user text.

highlight

private void LookUpEdit1_AutoSearch(object sender, LookUpEditAutoSearchEventArgs e)
{
    e.SetAutoSearchParameters(FindPanelParserKind.And, FilterCondition.StartsWith);
    e.SetHighlightRanges(CustomHightlight(e.Text));
}

static Func<string, string, DisplayTextHighlightRange[]> CustomHightlight(string userText)
{
    return (displayText, fieldName) =>
    {
        if (fieldName == "ShipCity" || fieldName == "ShipCountry")
        {
            if (displayText.StartsWith(userText))
                return new DisplayTextHighlightRange[] {
                    new DisplayTextHighlightRange(0, displayText.Length) };
        }
        return null;
    };
}
See Also