WinRT XAML apps + missing [XmlnsDefinition] attribute - xaml

There is not [XmlnsDefinition] attribute in XAML metro style applications, based on WinRT.
How my custom namespace mappings from WPF/SL apps should be migrated to WinRT XAML apps?

Looks like XmlnsDefinitionAttribute is missing. There is XmlnsDefinition struct but that is of not much use since there is no way to use it to set custom namespace mappings.

A discussion at https://social.msdn.microsoft.com/Forums/windowsapps/en-US/026baea0-6324-46ee-956a-72dbb4c90ca1/xmlnsdefinition-replacement-in-winrt?prof=required says:
there is no analogous attribute.
You might be able to provide similar data in a custom
IXamlMetadataProvider implementation, but since that is automatically
generated for you I'm not sure it can be overridden.

Related

dynamic data display chart plotter in MVVM

I am trying to use d3 chart plotter in MVVM.
I am trying to use the code given by Ravi ( https://dynamicdatadisplay.codeplex.com/discussions/63633 ) in my project, but not quite sure how to use it properly.
It says "the property Linegraphs is not found in type ChartPlotter" when I try to use it in the XAML code.
What I did is add the LinegraphViewModel.cs to my project and make it the same namespace as my new project.
Anyone can advice me on what should I do in order to use the plotter successfully in my MVVM application?
Thank you so much!
Dynamic Data Display is a complex library with many different components. It not enough to pull a single class into your project. You need to reference the d3 .dll to your project to be able to use it's functionality, as well as using the dynamic data namespace in your xaml.
After adding a reference to the library to your project, you can set up the Dynamic Data Display namespace like this :
xmlns:dynamicDataDisplay="http://research.microsoft.com/DynamicDataDisplay/1.0"

TypeScript Intellisense works differently if I define Object in Different Ways

I am trying to convert some existing JavaScript code by using TypeScript, One example I am using is to create Highcharts classes, the Highcharts definition is from https://github.com/borisyankov/DefinitelyTyped/blob/master/highcharts/highcharts.d.ts
We all know HighchartsOptions has a property title.
If I define the object in this way, I have intellisense
But if I define object this way
I don't have the intellisense.
Any specific reason why Visual Studio behaves differently?
It's just a bug. See this issue on CodePlex to track when it gets fixed.

Metro equivalent for HeaderedItemsControl

Converting a WPF application from .Net 4.0 to Metro.
It uses HeaderedItemsControl in various places.
I have not been able to find that control or a replacement candidate in Metro (Windows.UI.Xaml namespace)
So what is the recommended control in Metro to provide the functionality of HeaderedItemsControl?
You could easily create one by deriving from ItemsControl and adding a few simple dependency properties. You can see which properties are present in the WPF version here. You might not need all of them, but from a quick glance I can see a Header property which is just an object type. You would put a ContentPresenter in your HeaderedItemsControl's ControlTemplate and bind its Content to the HeaderProperty using TemplateBinding. Then bind the HeaderTemplate to the ContentTemplate of the ContentPresenter, etc.
Not sure how useful it is though to port WPF XAML code directly to WinRT. You're just asking for trouble in terms of code compatibility, but also porting a likely desktop-designed UI to a more touch-centric world.

Assembly Reference in Loose XAML

I have scenario where my loose xaml file can contain the custom control from another assembly. How do i make a reference to that assembly. My Loose XAML and assembly are at the same path.
I know the embedded xaml or xaml with in a project, the reference is added like this:
xmlns:WpfToolKit="http://schemas.microsoft.com/wpf/2008/toolkit"
Now how can i give similar type of reference in the loose xaml file.
Like so:
xmlns:Awesome="clr-namespace:MyAwesomeNameSpace"
And then use your controls as such:
<Awesome:MyAwesomeControl />
For nice looking schemas, please read this article on MSDN:
http://msdn.microsoft.com/en-us/library/ms747086.aspx
You will need the XmlnsDefinitionAttribute definition on your class.
Hope this helps!

Is there an IronRuby lib for generating concrete CLR classes?

I want to expose a class to CLR classes. The reason I have is Xaml. I want to write WPF custom controls in Ruby, then use xaml to style and provide templates for them. Last time I tried, Xaml couldn't look up IronRuby types.
class NavBar < TreeView
...
end
<ControlTemlate TargetType={x:Type MyNamspace:NavBar}>
...
</ControlTemplate>
I know I can get there by writing to the CodeDom, but I'm hoping someone already did the heavy lifting or can show me how without resorting to CodeDom.
There is the IronRubyInline project which does exactly that.
For WPF you don't need C# classes though because databinding just works, but for Silverlight < v4 you do need them.
http://github.com/rvernagus/IronRubyInline