【问题标题】:Does WPF have equivalent controls for all Winforms controls?WPF 是否对所有 Winforms 控件都有等效控件?
【发布时间】:2008-09-23 09:23:05
【问题描述】:

刚刚发现这一点很困难。我想弹出一个 FontDialog 以允许用户选择一种字体.. 那些熟悉的对话框之一..

【问题讨论】:

    标签: .net wpf winforms


    【解决方案1】:

    并非所有这些都有等价物。
    例如 FontDialog 没有..(抱怨抱怨)。这个页面有完整的内幕。发布因为它可能只是作为一个心理笔记有用。 http://msdn.microsoft.com/en-us/library/ms750559.aspx

    更新: 《Programming WPF》一书涵盖了这一点。显然,有些对话框没有构成 RTM 总线。将包含在下一次更新中的 FontDialog 可在此处获得。与 ColorPicker 对话框一样。另外你不应该盲目使用 Win32 对话框,因为 WPF 中的相应类型(例如 Font 和 Color 现在“更大更好”了。)

    http://blogs.msdn.com/wpfsdk/archive/2006/10/26/Uncommon-Dialogs--Font-Chooser-and-Color-Picker-Dialogs.aspx

    【讨论】:

      【解决方案2】:

      VistaBridge 示例包含一些 vista 对话框的包装器!

      还可以查看 System.Win32 Microsoft.Win32

      提供的包装器

      [更新] `Microsoft.Win32.FileDialog

      【讨论】:

      • 很高兴知道...但我们仍然需要支持 XP。
      • Microsoft.Win32 不是 System.Win32
      【解决方案3】:

      使用 WindowsFormsHost 嵌入 Windows 表单会导致很多问题 - 尤其是在处理渲染\可见性等时。

      一些控件已经被其他人实现并且可以通过 WEB 找到,例如:

      数值向上向下 日期时间选择器 拆分按钮

      当然还有新的 WPFDataGrid

      【讨论】:

      • 我正在 WPF 中寻找 NumericUpDown ......你有一个方便的链接吗?我已经进行了搜索,但没有发现任何特别好的东西。
      【解决方案4】:

      我知道一个团队在 WPF 应用程序上工作了几年,他们的反馈是 WPF 在涉及复杂控件(高级数据网格、树视图等)时仍然无法与 WinForms 匹敌.不过基本控制还可以。

      【讨论】:

      • OffTopic .. 看起来 WPF 还没有完成... 看起来截止日期已经过去了。再给它几年……支持所有过去的无数事物将需要一些时间来重写。
      • 是的,这可能是真的,只是需要时间来成熟。
      • 还值得一提的是,许多复杂的 WinForms 控件在 WPF 中已过时 - 通过模板和绑定可以获得相同的功能(它确实需要对应用程序结构进行重大转变)。 “系统”对话框和控件更成问题。
      【解决方案5】:

      不幸的是,它没有。但是,您可以使用 Microsoft.Win32 命名空间“借用”某些 Windows 窗体对话框,也可以使用 System.Windows.Forms.WindowsFormHost WPF 元素集成 Windows 窗体控件。此外,您可以通过调用构造函数,然后对其调用 ShowDialog() 方法直接显示 Windows 窗体对话框。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-13
        • 2012-03-02
        相关资源
        最近更新 更多