What is the relationship, if any, between WPF and Silverlight?
I was working with a WPF application and I decided that the controls and graphics I wanted to display on the grid might look better if it was a silverlight component.
I thought this way because of all the cool silverlight controls that look very flash-like.
But now that I have gottem my Visual Studio 2010 set up with SIlverlight, it seems that every silverlight app I can make are ASP.NET in nature. It seems that instead of a cool GUI control to make, Silverlight is telling me that it is primarely a dataflow sort of application for the web.
What is the relationship, if any, between WPF and Silverlight? Can I or can I not put a silverlight control into my existing WPF application?
Your told it yourself. You just forgot the uppercase when you said <F>lash-like.
Silverlight is the Microsoft equivalent of Adobe Flash.
WPF has been designed to facilitate the transfer of interfaces between graphists and programmers, and to bring Windows and Web development closer. WPF can generate a standard Windows or Web application. The only thing that differenciates it from regular development is the way to build the application, not the application itself.
In a browser, a WPF application needs to be able to run in a standard HTML page, thus with limitations.
Silverlight uniquely is a Web application, same as Flash. Same as Flash also, it does not generate a standard Web application. Users need a plug-in in their browser in order to run a Silverlight application. Since it uses the features of the plug-in to generate its cool animation features, it does not suffer from the limits imposed to an application running on HTML.
JBourgeois I agree with your response for the most part.
I would have to respectfully disagree with you Complete. Silverlight is simply a subset of WPF with the functionality between them getting closer together. Silverlight is not ASP.NET centric, though I could see how you might think it is. The default project for Visual Studio will create an ASP.NET page and an HTML page that you can use to host your Silverlight app, which really boils down to 1 or more .XAP files, heck you can even host your .XAP within a SharePoint page.
Silverlight is a cross-browser, cross-platform solution. So if you need to develop a solution that is web based and needs to work on Windows/Linux/Mac than Silverlight is your solution. If you need to develop a solution that is for Windows only machines than Silverlight or WPF could work for you. This choice comes down to your needs, do you need deep OS integration? Then WPF is the right solution. Can you get away with printing, file system access and integration via COM? Then Silvelright may be just fine.
From an asthetics perspective they are pretty much the same with the big difference being 3D in WPF and no 3D in Silverlight.
So, to your point about Silverlight being able to use "cool" controls and not WPF, this is where I believe you just need to look a little deeper. WPF and Silverlight are both based on XAML, and almost 100% identical XAML. So if you can create (buy) a cool control for Silverlight you are almost guaranteed that there is a similar control for WPF.
-- Android Development Center
-- Cloud Development Project Center
-- HTML5 Development Center
-- Windows Mobile Development Center