我已经学习wpf大约一周了..我有一个基本问题:

从业务角度和发展角度(根据您的经验)..wpf(功能)可以做什么和不能做什么..

请尝试说明一下..

不需要的答案的示例:
“功能齐全的独立应用程序,带有大量动画和闪闪发光的图像”

第二个问题:
如果我为我的应用程序构建 XBAP UI,我可以使 UI 在浏览器中“不显示”吗?

如果你要从教程/网站/书籍中回答..请不要直接复制粘贴,尝试用自己的话写...

有帮助吗?

解决方案

您可以在 WPF 应用程序中托管任何基于 Win32 GDI/USER API(WinForms、ActiveX 控件)构建的内容,因此,即使您遇到主要是 WPF 的应用程序的某些限制,您也始终可以在其中托管一些旧控件。

从 3.5 SP1 开始,您甚至可以非常无缝地托管动画 DirectX 图形(尽管 WPF 的 3D 支持提供了自己更简单的方法来实现最常见的操作)。

相比之下,WPF 相对于 WinForms 的主要优势在于它与自己的基于组件的模型紧密结合,因此很大一部分控件能够充当其他控件的容器。想要在菜单项中放置组合框吗?不知道为什么你会这样做,但你可以。更有用的是,您可以在列表框(或树视图)中放置一个按钮。除非您从头开始实现每个标准控件(WPF 就是这样做的),否则这些事情是不可能的。

缺点可能是暂时的:它在某些机器上可能有点不稳定(渲染代码似乎容易显示驱动程序不兼容),但每个服务包都会变得更好。此外,文本渲染也受到了严厉的批评 - ClearType 抗锯齿功能比 Windows 通常的效果更进一步,因此有些人抱怨它看起来很模糊。

(这些可能是临时问题的原因是 Microsoft 的 Visual Studio 2010 正在采用 WPF。所以他们现在正在“吃自己的狗粮”。)

其他提示

您几乎可以在 WPF 中执行 GUI 应用程序所需的任何操作。但这并不是真正的好处,恕我直言。

WPF 的真正好处之一是开发速度快且简单,一旦您克服了学习曲线(并且有一个学习曲线!)

另一个主要好处,也可能是最大的好处,是它允许设计人员处理演示文稿,做很多交互式事情,所有这些都使用设计人员友好的(无论如何更友好)工具,而不必向编码人员提交请求。只需更改 .xaml,设计人员就可以使应用程序看起来几乎完全不同,并添加各种行为(面板消失、扩展、各种简洁的东西)。无需更改一行代码。

理论上,您可以在 WPF 中做任何您想做的事情。将其与 WinForms 应用程序进行比较。有什么是你不能用它构建的吗?并不真地。WPF 也是如此。只是 WPF 更适合某些内容,例如动画、视频、图形等。由于它基于 xaml,因此它也更适合针对 XML 等数据绑定。也可以看看 这个相关问题.

至于你的第二个问题,我不明白你的意思。您的意思是是否可以使用 WPF 显示网站?当然可以,就像 WinForms 一样。

哦,在WPF中有些东西还没有实现。DataGridViews 作为流行的示例仅在 Codeplex 预览中。您有很多像 Expander 这样的东西,它们以不同的方式工作,并且您可能会在自动调整内容大小方面遇到很多问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top