问题
While reading an article about Mono on Wikipedia, I found out there is a Mono sub/side-project called Olive which aims to bring the remaining bits of .NET to Mono - currently focusing on Workflow Foundation and WPF - though they for obvious reason call it only "Presentation Foundation".
This made me think: WPF is closely tied to DirectX, which in turn is closely tied to Windows. How do they plan to make it run on wider variety of OSes? They don't use any GPU acceleration at all? Or do they base it on OpenGL? Or something else?
Also - if there is someone who has a little bit more of an insight into the project (information on the web is very sparse in this subject) who could answer: What is the current state of the project? Can I really look forward to Mono having reasonable support of WPF in mid-term future?
回答1:
Consider the Moonlight case.
Mono team already uses OpenGL to achieve what Silverlight does (GPU acceleration and so on). So it is technically possible to fully implement PF for other OS using OpenGL.
The most obvious problem I think is that supporting so many OS needs too much effort that Mono team itself cannot offer.
回答2:
I would not hold my breath for WPF from Mono. I have seen estimates of 50 developer years of effort and it is not worth that much to Novell. They are targeting mobile and games as far as I can tell. It seems unlikely that anybody else will step-up for that kind of effort.
A possible alternative is Moonlight which is Silverlight on Linux. There has been a lot of talk about using Moonlight to build desktop apps. The programming model is similar to WPF.
来源:https://stackoverflow.com/questions/5200540/how-does-olive-mono-implement-wpf