public override void Initialize() { // application-specific ApplicationStartUp(); // This block is required. // The first argument to the AutomationAdapter() ctor is an object reference that // will be passed to the DataDrivenAdapter. The AppInitString.xml file, which // is the intended application initstring for this control, shows the WinDataDrivenAdapter // is configured--which will be expecting a handle to a window. // The second argument to the AutomationAdapter() is inherited from HostedControl, and // is required by HAT to distinguish sessions. _AutomationAdapter = new AutomationAdapter(_hWndMainWindow, AppHostWorkItem); _AutomationAdapter.Name = Name; _AutomationAdapter.ApplicationInitString = _InitString.OuterXml; _AutomationAdapter.Initialize(); // This block is required. // These "implicit" actions are required by HAT. Specific ActionId values are not significant. int actionId = 2; string actionInit = "<ActionInit/>"; AddAction(actionId++, AutomationImplicitAction.FindControl, actionInit); AddAction(actionId++, AutomationImplicitAction.GetControlValue, actionInit); AddAction(actionId++, AutomationImplicitAction.SetControlValue, actionInit); AddAction(actionId++, AutomationImplicitAction.ExecuteControlAction, actionInit); AddAction(actionId++, AutomationImplicitAction.AddDoActionEventTrigger, actionInit); AddAction(actionId, AutomationImplicitAction.RemoveDoActionEventTrigger, actionInit); }
public override void Initialize() { _IsInitializationComplete = false; base.Initialize(); _AutomationAdapter = new AutomationAdapter(this, AppHostWorkItem); _AutomationAdapter.Name = Name; _AutomationAdapter.ApplicationInitString = _AppInitString; _AutomationAdapter.Initialize(); // these are the DDA "implicit actions"--let Aif know so it will let them through int actionId = 2; string emptyActionInit = "<ActionInit/>"; AddAction(actionId++, AutomationImplicitAction.FindControl, emptyActionInit); AddAction(actionId++, AutomationImplicitAction.GetControlValue, emptyActionInit); AddAction(actionId++, AutomationImplicitAction.SetControlValue, emptyActionInit); AddAction(actionId++, AutomationImplicitAction.ExecuteControlAction, emptyActionInit); AddAction(actionId++, AutomationImplicitAction.AddDoActionEventTrigger, emptyActionInit); AddAction(actionId++, AutomationImplicitAction.RemoveDoActionEventTrigger, emptyActionInit); // this is for the action implementation below AddAction(actionId, "MsgHelloWorld", emptyActionInit); }
protected virtual void HATBase_WindowAttached(object sender, EventArgs e) { _AutomationAdapter.SessionWorkItem = AppHostWorkItem; _AutomationAdapter.DdaApplicationObject = win.Handle; _AutomationAdapter.Name = ApplicationName; _AutomationAdapter.ApplicationInitString = CaptureHATInitString().OuterXml; _AutomationAdapter.AdapterFireRequestActionEvent += DoAction; _AutomationAdapter.AdapterContextChangedEvent += _AutomationAdapter_AdapterContextChangedEvent; _AutomationAdapter.Initialize(); }