Is it possible to create custom control patterns The docs don't say it isn't, but I couldn't find any hints or information on how to do it.
If it is possible, is it just a case of inheriting and implementing the base pattern interface to create a custom control pattern
Thanks,
Will

Custom control patterns
3D Paul
FYI saw on Nick Kramer's blog he shows how to override WndProc for WPF element.
http://blogs.msdn.com/nickkramer/
Also from one of the developers in accessible technology group
"
BTW - the approach that IE uses today to expose theselves cross-proc is to use a custom registered WM_GETOBJECT-like message, which they return a IHTMLDocument in response to, using LresultFromObject. RichEdit does similar, but responds to OBJID_NATIVEOM. In both cases, these are using COM interfaces, and they let DCOM do the marshalling. Other 3rd parties could use a similar approach."
"
Oluseyi
Hi Will, I am excited to hear that you are working on accessibility research related to WPF 3D. As you have noticed 3D functionality is not available through the current set of UI Automation patterns. With Microsoft UI Automation we do not support the ability to create custom control patterns.
We are working on adding a whitepaper to our SDK that will outline our reasoning for not supporting custom control patterns, events, and/or properties in Microsoft UI Automation. The main reason is that the point of UIA is to standardize well known GUI concepts into a programming model. Because 3-dimensional interaction has not become a GUI standard (for example there is not a standard widget toolkit or interaction paradigm) we have not yet standardized a control pattern that will encapsulate the behaviour. Microsoft UI Automation was created to standardize interactions so that assistive technologies and automated testing utilities do not have to write custom code for each application's way of exposing the same basic set of behaviour.
We believe that 3D interactions is definitely an area for research and design for the next release of our product. We would be very interested to work with you on what you have discovered and what recommendations you would make for how to convey 3D information in a standard way to automation clients. In general if any developer is working with UI behaviours that are not covered by our current architecture we want to hear about it. It would be great if people continue posting these requests to the forum and we can collaborate.
Microsoft does believe that the information you are working with should be accessible today. To enable this you will need to handle the cross process communication yourself for this piece of functionality. This is typically done through creating a custom COM object. I will speak with the Windows Presentation Foundation to see if there are any samples for what you are interested in doing.
I would be very interested to see the work you have been doing!
Thomas
Saqib Barlas
Vestas_Jakob!
Gary Carlson
Hi,
I thought I'd provide some more information. I was in a bit of a rush to attend a meeting when I posted last time.
The scenario I'm working within is a custom WPF control that makes use of the 3D functionality in WPF. It visualises some log data that traces the position of a pointer in 3D space, which is represented by a 3D line of a set colour. In addition to the pointer trace data, the control will also display a 3D visualisation of the edges of the object that the person was investigating.
I've done some semantic analysis of the communication conveyed by the control, and worked out the key semantics that need to be communicated via UIA in order for AT users to have some understanding of what's going on. However, the problem is that none of the pre-defined control patterns fit the semantics for this scenario. Therefore, a custom control pattern would communicate the semantics with greater clarity.
Thanks.
Will