V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CatCode
V2EX  ›  .NET

接了个小活,选 Windows 窗体应用还是 WPF 应用?

  •  
  •   CatCode · 2024-05-26 09:09:41 +08:00 · 8845 次点击
    这是一个创建于 388 天前的主题,其中的信息可能已经有所发展或是发生改变。
    做一个类似于小工具集合的项目,桌面应用,语言不限,要求适配 Win10 21H1 到目前最新 Win11 版本。
    只考虑 Windows 平台,有 Windows API 调用的需求。
    看了一下 UI 上要求显示/交互的内容,感觉 Win32 窗体那一套就完全够用了。要求要对 Hi-DPI 支持。
    于是定下了用 C# (.Net 8 LTS)做。
    目前在选 Windows 窗体应用 还是 WPF 应用 上犯了难。各位 V 友有什么高见?
    43 条回复    2024-12-26 14:29:42 +08:00
    saranz
        1
    saranz  
       2024-05-26 09:14:26 +08:00
    WPF
    IvanLi127
        2
    IvanLi127  
       2024-05-26 09:15:29 +08:00
    必须 WPF
    CatCode
        3
    CatCode  
    OP
       2024-05-26 09:28:35 +08:00
    @saranz @IvanLi127 能说说理由吗?
    foam
        4
    foam  
       2024-05-26 09:52:03 +08:00 via Android   ❤️ 2
    我记得 10 年前在大学学 Windows 应用开发时,就已经用的是 wpf 了。好像是在 UI 自适应上,事件设计上比较有优势。

    我觉得楼主既然在纠结了,应该是已经知道它们(对你来说)各自的优缺点。那么你可以把它们各自的优缺点都罗列出来,分别打分。高分者作为你的确定方案。(这个步骤目的是让你自己和他人了解到你的认知,以及你在意的点(从分数上会看出来))

    然后把以上优缺点和评分晒出来,其他同学会更有针对性地给出建议。
    wellerman
        5
    wellerman  
       2024-05-26 09:53:47 +08:00
    都小活了,肯定是 WinForms 。早点搞完,拿到钱才是正经事。
    codehz
        6
    codehz  
       2024-05-26 10:24:32 +08:00 via iPhone
    Ritr
        7
    Ritr  
       2024-05-26 10:33:55 +08:00
    winform 更简单粗暴
    ITHaoge
        8
    ITHaoge  
       2024-05-26 10:34:36 +08:00
    对 Hi-DPI 支持,WPF 更简单一点吧
    ysc3839
        9
    ysc3839  
       2024-05-26 10:42:10 +08:00 via Android
    仅 Win10+语言不限,那我会选择 C++ + Xaml Island
    mingl0280
        10
    mingl0280  
       2024-05-26 10:44:54 +08:00
    High DPI 就 WPF 了,WinForms 对高 DPI 的支持不是很好。
    enihcam
        11
    enihcam  
       2024-05-26 10:48:57 +08:00
    Electron
    seakingii
        12
    seakingii  
       2024-05-26 10:52:08 +08:00
    简单点 winform
    复杂点 Avalonia
    saranz
        13
    saranz  
       2024-05-26 11:11:18 +08:00
    @CatCode 你不是要 hi-dpi 吗。
    lixinrui000
        14
    lixinrui000  
       2024-05-26 11:28:25 +08:00
    我试了一下 wpf ,连任务栏图标都不是原生支持诶。诶微软
    jstony
        15
    jstony  
       2024-05-26 11:38:13 +08:00
    哪个熟悉选哪个呗,怎么快搞定怎么来。
    ysc3839
        16
    ysc3839  
       2024-05-26 11:56:54 +08:00 via Android
    没看到是接活,如果不是很想花时间开发,又对前端比较熟悉的话,可以考虑 React Native for Windows ,不然就 WPF 吧。
    icedx
        17
    icedx  
       2024-05-26 12:10:15 +08:00
    个人建议不要碰 xaml
    kalluwa
        18
    kalluwa  
       2024-05-26 12:12:48 +08:00
    小活 == 不要用 xaml 那一套
    holulu
        19
    holulu  
       2024-05-26 12:38:41 +08:00
    最近也打算写 Windows APP ,WinUI 3 Gallery 应该就是原生风格吧,但写的都是 XAML
    shijingshijing
        20
    shijingshijing  
       2024-05-26 12:40:28 +08:00
    winform 直接拖控件,半天搞完。
    PrinceofInj
        21
    PrinceofInj  
       2024-05-26 13:46:18 +08:00   ❤️ 1
    老老实实用 net framwork 做就行了。用最新的.net 8 还得让对方安装运行库,搞不好运行库的体积都比你工具的体积打 100 倍。
    zgray
        22
    zgray  
       2024-05-26 16:47:20 +08:00   ❤️ 1
    哪个熟悉用哪个,赚外快效率第一。
    kylix
        23
    kylix  
       2024-05-26 16:54:32 +08:00   ❤️ 1
    哪个熟一点啊?如果都差不多的话还是 WPF 吧,原因上面的各位老大都说了。

    ---
    不出所料,果然有推 Electron 的
    di1012
        24
    di1012  
       2024-05-26 17:45:54 +08:00   ❤️ 1
    小活当然是 winform ,速度拿钱才是王道
    chinni
        25
    chinni  
       2024-05-26 20:12:54 +08:00
    framework 4.8.1 搞定(
    coder001
        26
    coder001  
       2024-05-26 21:00:36 +08:00
    zhuangzhuang1988
        27
    zhuangzhuang1988  
       2024-05-26 21:27:56 +08:00
    熟悉哪个用哪个。
    scung
        28
    scung  
       2024-05-26 21:36:06 +08:00
    WinForm + .Net 8 快速完成,对 UI 没太多自定义需求的话就不要上 WPF 了,Winform 早就支持高 DPI 了
    lujiaxing
        29
    lujiaxing  
       2024-05-26 22:46:31 +08:00
    看界面复不复杂吧 复杂, 动效比较多用 WPF. WinForms 做动效纯找死. 如果界面不复杂, WinForms 就可以了.
    quanzan
        30
    quanzan  
       2024-05-26 23:12:29 +08:00
    欢迎关注全赞工程师公众号,让我做,我肯定先写个 uniapp ,然后再转成 Electron
    DigitaIOcean
        31
    DigitaIOcean  
       2024-05-27 08:53:26 +08:00
    winform
    ScqLl
        32
    ScqLl  
       2024-05-27 09:04:48 +08:00
    转包给我吧,这样你就不用纠结了
    visper
        33
    visper  
       2024-05-27 09:13:39 +08:00
    aardio
    wuethan
        34
    wuethan  
       2024-05-27 13:56:05 +08:00
    winform +1 不要用 WPF 给自己添堵,注重美观可以用 skins ,或者最简单将控件全部扁平化,类似网页设计去做 UI
    forty
        35
    forty  
       2024-05-27 14:24:28 +08:00
    @enihcam 能不用 electron 就尽量不用,除非只会用它。
    enihcam
        36
    enihcam  
       2024-05-27 14:28:23 +08:00
    @forty 能不用 WPF 就尽量不用,除非只会用它。
    SWALLOWW
        37
    SWALLOWW  
       2024-05-27 15:43:46 +08:00
    转包给我吧,我 WPF 贼快
    XMustang
        38
    XMustang  
       2024-05-27 18:01:37 +08:00
    快速完成拿钱,我选择 py tkinter 小海龟
    lujiaxing
        39
    lujiaxing  
       2024-05-28 09:45:57 +08:00
    @enihcam 能不用电脑就尽量不用,除非只会用它。
    seakingii
        40
    seakingii  
       2024-05-30 09:29:08 +08:00
    @visper 用 aardio 体验怎么样?能做复杂的应用吗?
    visper
        41
    visper  
       2024-05-30 13:43:47 +08:00
    @seakingii 我没用过它开复杂应用。感觉起来的话,文档还是不够标准,网上资料还是少点,代码提示不够强。不过对快速做点小工具来说,很好用。
    gnimgnot
        42
    gnimgnot  
       341 天前
    支持 Win7 及以下,Windows Forms
    支持 Win8+且不需要最新的 UI 风格,WPF
    Win10 以上且需要最新的 UI 风格,WinUI 3
    跨平台,Avalonia

    支持 Win8 及以下,.Net Framework
    反之,.Net 6/8 ,可以 Self Contain 运行时
    niubiman
        43
    niubiman  
       174 天前
    既然是小活, 那就选你熟悉的, 两个都不熟悉那就选 winform
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1158 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 18:04 · PVG 02:04 · LAX 11:04 · JFK 14:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.