wpf - WPF 中最糟糕的问题是什么?

标签 wpf

我已经开始给自己列一个“WPF 陷阱”列表:让我烦恼的事情,我不得不写下来记住,因为我每次都爱上它们......
现在,我很确定你们都曾在某一时刻偶然发现过类似的情况,我希望你们分享您在这个主题上的经验:
什么是让你一直困扰的问题?你觉得最烦人的那个?
(我有几个问题似乎没有解释,也许你的意见会解释)
以下是我的一些“个人”陷阱(随机呈现):

  • 即使单击是在控件的“透明”背景(例如标签)上而不仅仅是在内容(在这种情况下为文本)上,为了触发 MouseEvent,控件的背景必须设置为“画笔。透明”,而不仅仅是“空”(标签的默认值)
  • WPF DataGridCell 的 DataContext 是单元格所属的 RowView,而不是 CellView
  • 在 ScrollViewer 内部时,Scrollbar 由 scrollviewer 本身管理(即设置 ScrollBar.Value 等属性无效)
  • Key.F10按“F10”时不会触发,而是得到 Key.System你必须去找e.SystemKey获取 Key.F10

  • ......现在你开始了。

    最佳答案

  • 始终注意输出窗口
    绑定(bind)错误。忽略输出
    window 是眼泪的秘诀。
  • 在调试绑定(bind)失败时,在绑定(bind)中使用 PresentationTraceOptions.TraceLevel="High"获取详细的绑定(bind)信息。
  • 制作静态、不变的资源,例如画笔 PresentationOptions:Freeze="True"以在运行时节省资源。
  • 将 WPF DataGrid 用作数据网格。修改它以使其表现得像 Excel 是一个巨大的痛苦。
  • BindingList<T>不能很好地与 CollectionViewSource 配合使用。曝光 ObservableCollection<T>而是从您的 View 模型中。
  • 互联网提供了六种不同的想法,用于在 WPF 文本框中显示 CueBanner 文本。他们都坏了。
  • 关于wpf - WPF 中最糟糕的问题是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4957636/

    相关文章:

    wpf - 如何在 WPF 中刷新 ListView

    c# - GeometryModel3D 面积和体积

    c# - 如何使用 C# 销毁第三方 WPF 子窗口?

    c# - IOException : cannot locate resource at Design time only

    c# - 从 WPF 引用 .NET Core 1.0 库

    c# - 如何使用图形对象渲染 WPF Hwnd

    c# - 添加对象到 ObservableCollection 列表对象

    c# - 如何检查 LINQ to SQL 查询的结果?

    wpf - 为我的 window 改变 Aero 玻璃的颜色?

    c# - 将样式应用于第一个 child ?