问题标签 [wpf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
34 回答
49589 浏览

.net - 创建新的 GUI 时,WPF 是不是 Windows 窗体的首选?

Windows 窗体的大多数限制和技巧对大多数程序员来说都是常见的。但由于 .NET 3.0 也有 WPF 可用,即 Windows Presentation Foundation。据说您可以使用它使“性感应用程序”更容易,并且使用 .NET 3.5 SP1 可以很好地提高执行速度。

但另一方面,很多事情都与 WPF 不同。我不会说它更难,但你必须从头开始学习“一切”。

我的问题:当您必须创建一个新的 GUI 并且项目没有时间压力时,是否值得花费这些额外的时间?

0 投票
9 回答
57700 浏览

.net - 如何测试 WPF 用户界面?

使用带有MVC / MVP架构的 win 表单,我通常会使用一个类来包装视图以测试 UI,同时为模型和控制器/演示器使用模拟。包装类将通过属性和事件使 UI 中的大多数内容成为测试运行器的可观察属性。

这是测试 WPF 应用程序的可行方法吗?有没有更好的办法?有什么需要注意的问题吗?

0 投票
11 回答
27518 浏览

.net - WPF 应用程序在启动时失败并出现 TypeInitializationException

我有一个简单的 WPF 应用程序,我正在尝试启动它。我正在遵循 Microsoft 模式和实践“WPF 的复合应用程序指南”。我已按照他们的说明进行操作,但是我的 WPF 应用程序立即失败并出现“TypeInitializationException”。

InnerException 属性显示“'System.Windows.Navigation.BaseUriHelper' 的类型初始化程序引发了异常。”

这是我的 app.xaml:

这是我的 app.xaml.cs(在“public App()”处抛出异常):

我已将“App”类设置为项目中的启动对象。

什么会误入歧途?

0 投票
20 回答
70114 浏览

.net - 面试题:WPF开发者

每个 WPF 开发人员都应该知道什么?

入门级

  • 强大的 .NET 2.0 背景并愿意学习!
  • 解释依赖属性?
  • 什么是风格?
  • 什么是模板?
  • 捆绑
  • 基类之间的区别:Visual、UIElement、FrameworkElement、Control
  • 视觉与逻辑树?
  • 属性更改通知(INotifyPropertyChange 和 ObservableCollection)
  • ResourceDictionary - 由 a7an 添加
  • 用户控件 - 由 a7an 添加
  • 气泡和隧道路由策略之间的区别 - 由 Carlo 添加
  • 为什么微软要引入另一种标记语言?
  • XAML

中级

  • 路由事件和命令
  • 转换器 - 由 Artur Carvalho 添加
  • 解释 WPF 的 2-pass 布局引擎?
  • 如何实现面板?
  • 互操作性(WPF/WinForms)
  • 混合/苹果酒- 由 a7an 添加
  • 动画和故事板
  • ClickOnce 部署
  • 皮肤/主题
  • 自定义控件
  • 工作线程如何更新 UI?
  • DataTemplate 与 HierarchicalDataTemplate
  • ItemsControl vs ItemsPresenter vs ContentControl vs ContentPresenter
  • 不同类型的触发器

高级的

  • 附加行为的例子?
  • 什么是棱镜、CAL 和 CAG?
  • 工作线程如何更新 UI?
  • WPF 3D - 由 a7an 添加
  • Silverlight 2 和 WPF 之间的差异
  • MVVM/MVP - 由 a7an 添加
  • WPF 性能调优
  • 像素着色器
  • Freezables 的目的

还有其他“技巧”问题要问吗?

您希望您的 WPF 开发人员了解 blend 吗?

0 投票
15 回答
192575 浏览

.net - 将枚举属性数据绑定到 WPF 中的组合框

以以下代码为例:

我想要将属性 ExampleProperty 数据绑定到 ComboBox,以便它显示选项“FooBar”和“BarFoo”并在 TwoWay 模式下工作。理想情况下,我希望我的 ComboBox 定义看起来像这样:

目前,我在我的窗口中安装了 ComboBox.SelectionChanged 和 ExampleClass.PropertyChanged 事件的处理程序,我在其中手动进行绑定。

有更好的或某种规范的方式吗?您通常会使用转换器吗?如何使用正确的值填充 ComboBox?我现在什至不想开始使用 i18n。

编辑

所以回答了一个问题:如何使用正确的值填充 ComboBox。

通过 ObjectDataProvider 从静态 Enum.GetValues 方法检索 Enum 值作为字符串列表:

这可以用作我的 ComboBox 的 ItemsSource:

0 投票
6 回答
64206 浏览

wpf - WPF TextBlock 元素和Label 控件有什么区别?

从视觉上看,以下两个片段都产生了相同的 UI。那么为什么有 2 个控件..
Snippet1

片段2

好吧,我自己来回答这个问题......认为这是我今天从Programming WPF学到的有用的花絮)

0 投票
4 回答
5411 浏览

wpf - 如何使用加速器在 WPF 中制作自定义 MenuHeaders?

我想在 WPF 中制作一些自定义 MenuHeaders,这样我就可以(例如)在菜单项中拥有一个图标和文本。

通常使用 MenuItems,如果您使用纯文本填充 Header 字段,则可以使用下划线添加加速键。例如,_File

但是,如果我想放入一个 UserControl,我相信这个功能会中断,我将如何做类似以下的事情?

0 投票
1 回答
5060 浏览

wpf - WPF - BitmapEffect 上的编程绑定

我希望能够以编程方式将一些数据绑定到BitmapEffect上的依赖属性。使用像 TextBlock 这样的 FrameworkElement 有一个 SetBinding 方法,您可以在其中以编程方式执行这些绑定,例如:

而且我知道您可以直接使用 XAML(如下所示)

但我不知道如何使用 C# 来完成此操作,因为 BitmapEffect 没有 SetBinding 方法。

我试过了:

但它不起作用。

0 投票
2 回答
5446 浏览

wpf - 如何将代码中的 xml 字符串加载到绑定到 XML 的 XPath 的数据绑定 UI 控件?

我看到的每个示例都在 xmldataprovider 源中使用静态 XML,然后使用 XPath 绑定来对 UI 控件进行数据绑定。想法是使用 WPF UI 编辑动态 XML(开发人员在编码期间已知的结构)。

有没有人找到一种方法来加载动态 xml 字符串(例如在运行时从文件中加载它),然后将该 xml 字符串用作 XmlDataprovider 源?

代码片段会很棒。

更新:为了更清楚,假设我想加载从 Web 服务调用收到的 xml 字符串。我知道xml的结构。所以我将它数据绑定到 WPF 窗口上的 WPF UI 控件。如何使这项工作?Web 上的所有示例,在 XmlDataProvider 节点的 XAML 代码中定义整个 XML。这不是我要找的。我想在代码隐藏中使用 xml 字符串将数据绑定到 UI 控件。

0 投票
9 回答
3784 浏览

wpf - 先学 Silverlight 还是 WPF?

Silverlight/WPF 似乎是使用 .NET 进行用户界面开发的长期未来。这很棒,因为我可以看到在客户端和 Web 开发方面重用 XAML 技能的优势。但是看看 WPF/XAML/Silverlight,它们似乎是非常庞大的技术,那么从哪里开始最好呢?

我想听听任何对两者都有很好的了解并可以推荐哪个是更好的起点以及原因的人的意见。