Changes from V1.0 to V1.1:
2. Strongly typed Attached properties
3. Enum support.
4. getHost() support
5. exposed the inner Xaml element.
You've asked for it – you got it.
file sizes for V1.0:
Intellisense.js – 1,275KB
Intellisense.compressed.js – 425KB
file sizes for V1.1:
Intellisense.js – 613KB
Intellisense.compressed.js – 279KB
Strongly typed Attached properties
In V1.0 you had to have local copies of the DependencyProperty you want to change.
Let's say we want to move "someElement" 100 pixels to the top of the screen by decreasing it's Canvas.Top by 100.
var CanvasTop = new DependencyProperty("Canvas.Top");
someElement.setValue(CanvasTop, someElement.getValue(CanvasTop) – 100);
This required you to remember and spell correctly the name of the Attached Properties.
In V1.1 There's static field like constructs you can use.
someElement.setValue(Canvas.get_TopProperty(), someElement.getValue(Canvas.get_TopProperty()) – 100);
In V1.0 you had to initialize all your Enum values and remember them.
Let's say we want to check if a TextBlock has an underline as TextDecorations and if so set it's decorations to none.
var TextDecorationsUnderline = new TextDecorations("Underline");
var TextDecorationsNone = new TextDecorations("None");
if (myTextBlock.get_textDecorations().element == TextDecorationsUnderline.element)
In V1.1 you can use Enus almost the same way you do in C#.
In V1.0 we had no getHost(), In V1.1 we have getHost with full Intellisense.
And we can even use createFromXaml with full intellisense.
someElement.getHost().get_content().createFromXaml("<TextBlock xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\" x:Name=\"tbx2\" />", false);
exposed the inner Xaml element
You might want, on occasion to use the actual XAML element that works behind the scenes. In V1.0 you had to use the ".element" extension which you didn't get Intellisense for.
In V1.1 you get Intellisense for this property on every class.
If you've got any more feature request – I'm open to suggestions.