InfoConnect for Unisys
Attachmate.Reflection.Productivity Namespace / IRecentTyping Interface / ListChanged Event
Example


In This Topic
    ListChanged Event
    In This Topic
    Raised when a string is added to or removed from the Recent Typing list.
    Syntax
    'Declaration
     
    
    Event ListChanged As EventHandler
    'Usage
     
    
    Dim instance As IRecentTyping
    Dim handler As EventHandler
     
    AddHandler instance.ListChanged, handler
    event EventHandler ListChanged
    Example
    This sample handles the ListChanged Event to delete the entry "SecretStuff" if it is added to the Recent Typing list.
    using System;
    using System.Drawing;
    using System.Collections.Generic;
    using System.Text;
    using Attachmate.Reflection.Framework;
    using Attachmate.Reflection.Emulation.IbmHosts;
    using Attachmate.Reflection.UserInterface;
    using Attachmate.Reflection.Productivity;
    
    namespace ConfigureRecentTyping
    {
        class Program
        {
    
    
            static void Main(string[] args)
            {
                //Start a visible instance of InfoConnect or get the instance running at the given channel name
                Application app = MyReflection.CreateApplication("myWorkspace", true);
    
                //Create a terminal from the session document file
                string sessionPath = Environment.GetEnvironmentVariable("USERPROFILE") + @"\Documents\Micro Focus\InfoConnect\demoSession.rd3x";
                IIbmTerminal terminal = (IIbmTerminal)app.CreateControl(sessionPath);
    
                //Make the session visible in the workspace
                IFrame frame = (IFrame)app.GetObject("Frame");
                frame.CreateView(terminal);
    
                IIbmScreen screen = terminal.Screen;
    
                IProductivity productivityTools = terminal.Productivity;
    
                IRecentTyping typing = terminal.Productivity.RecentTyping;
    
                //Enable recent typing
                typing.Enabled = true;
    
                //Make the Recent Typing panel visible
                typing.RecentTypingPanelVisible = true;
    
                //Keep the list for the next session
                typing.ClearListOnDisconnect = false;
    
                //Set the minimum length, in characters, for words added to Recent Typing. 
                typing.MinimumMatch = 5;
    
                //Set the maximum number of items in the Recent Typing list. 
                typing.MaxListItems = 50;
           
                
                //Remove the user name from the list
                string uName = Environment.UserDomainName;
                typing.DeleteListItem(uName);
    
    
                //Add an item to the list
                typing.AddListItem("Kayak");
    
                typing.ListChanged += typing_ListChanged;
    
    
    
                Console.ReadLine();
            }
    
            static void typing_ListChanged(object sender, EventArgs e)
            {
                Console.WriteLine("list changed");
    
                IRecentTyping typing = (IRecentTyping)sender;
    
                string[] typingEntries = typing.RecentTypingCollection;
    
                
                //Check and remove sensitive entries
                for (int i = 0; i < typingEntries.Length; i++)
                {
                    if (typingEntries[i] == "SecretStuff") 
                    {
                        typing.DeleteListItem(i);
                    }
                }
            }
    
    
    
    
    
        }
    }
    
    
    
    
    
    
    
    
    
    
    
    See Also