Sub OnSearch(Sender: Object; Args: ITreeSearchNodeEventArgs);
Begin
//набор операторов;
End Sub OnSearch;
Sub OnSearch(pSender: System.Object; pArgs: Prognoz.Platform.Interop.Forms.TreeSearchNodeEventArgs);
Begin
//набор операторов;
End Sub OnSearch;
Sender. Параметр, возвращающий компонент, сгенерировавший событие.
Args. Параметр, позволяющий определить параметры события.
Событие OnSearch наступает после окончания поиска элементов в компоненте.
Данное событие наступает для каждого найденного элемента. Используя свойство Show можно управлять переходом к найденному элементу. Если свойству Show установить значение False, то элемент пропускается и переход осуществляется к следующему найденному элементу, для которого также будет сгенерировано свое событие OnSearch.
Для выполнения примера предполагается наличие формы и расположенного на ней компонента TreeList. Для компонента установлены обработчики событий поиска элементов OnBeginSearch и OnSearch.
Class TESTForm: Form
TreeList1: TreeList;
Sub TreeList1OnBeginSearch(Sender: Object; Args: ITreeSearchEventArgs);
Begin
Debug.WriteLine("Поиск по тексту: " + Args.SearchText);
End Sub TreeList1OnBeginSearch;
Sub TreeList1OnSearch(Sender: Object; Args: ITreeSearchNodeEventArgs);
Begin
If Args.Node.Text.IndexOf("Old") <> -1 Then
Args.Show := False;
End If;
End Sub TreeList1OnSearch;
End Class TESTForm;
Текст, по которому будут искаться элементы, будет выведен в консоль среды разработки. Если элемент в своем наименовании содержит текст «Old», то такие элементы будут пропускаться и поиск будет переходить к следующим элементам.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Forms.Net;
Public Partial Class TESTForm: Prognoz.Platform.Forms.Net.ForeNetForm
Public Constructor TESTForm();
Begin
InitializeComponent();
End Constructor;
Private Sub treeListNet1_OnBeginSearch(pSender: System.Object; pArgs: Prognoz.Platform.Interop.Forms.TreeSearchEventArgs);
Begin
System.Diagnostics.Debug.WriteLine("Поиск по тексту: " + pArgs.SearchText);
End Sub;
Private Sub treeListNet1_OnSearch(pSender: System.Object; pArgs: Prognoz.Platform.Interop.Forms.TreeSearchNodeEventArgs);
Begin
If pArgs.Node.Text.IndexOf("Old") <> -1 Then
pArgs.Show := False;
End If;
End Sub;
End Class;
См. также: