关于 winui3 本地化功能的一些看法,欢迎讨论 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
techstay
V2EX    程序员

关于 winui3 本地化功能的一些看法,欢迎讨论

  •  
  •   techstay
    techstay 224 天前 2187 次点击
    这是一个创建于 224 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在学习 winui3 ,想着这应该是目前 win 平台最现代的图形框架,应该还是值得学习的,但是在看到本地化功能的时候,我觉得有点不爽。

    按照官方文档的说法,要先把字符串存到 resw 文件里,然后在 XAML 里引用 x:Uid ,程序就可以根据系统区域自动识别了。

    <TextBlock x:Uid="Greeting"/> 

    但是这样做似乎有个问题,就是只能在程序打开的时候定好区域,无法动态修改。我看到一些 win 小工具带有语言菜单,可以运行的时候动态修改显示语言。

    想要在 winui3 中实现这样的功能,官方文档倒是也有相关内容 https://learn.microsoft.com/en-us/windows/uwp/app-resources/localize-strings-ui-manifest#load-a-string-for-a-specific-language-or-other-context

    但是这个例子似乎只适合少量界面变化,不好做全局显示变化。感觉还不如自己实现一套逻辑动态根据区域设置显示语言的功能,不知道大家怎么看?

    最后我想吐槽一下,怪不得现在说桌面客户端没人开发了,感觉光从开发工具的便利性上就被移动端完爆了。现在移动端开发各种热重载边改边看,开发体验丝般润滑,点名表扬 flutter 。桌面端 winui3 稍微改点东西程序就要完全重启,启动速度还贼慢,说是原生开发但是各种功能实现也不舒服,总之就是给人一种硬邦邦的感觉。就这种体验,能比人家好才怪了。

    7 条回复    2025-03-09 11:58:31 +08:00
    Danswerme
        1
    Danswerme  
       224 天前
    桌面开发有没有类似前端热重载这种机制吗?我最近也想学习下 Windows 程序开发,写点小工具,你说的“稍微改点东西程序就要完全重启”,如果真是这样开发效率也太低了吧。
    DTCPSS
        2
    DTCPSS  
       224 天前
    thawne
        3
    thawne  
       224 天前
    @Danswerme 部分 xaml 的修改可以热重载,cs 的好像不行
    techstay
        4
    techstay  
    OP
       224 天前
    @DTCPSS 这个东西好,学习了
    techstay
        5
    techstay  
    OP
       224 天前
    @Danswerme flutter 支持,也有 windows 版,我学了一下感觉还不错,热重载非常方便,就是不知道算不算桌面端开发,好像也没瞧见几个用 flutter 开发的桌面程序
    techstay
        6
    techstay  
    OP
       224 天前
    我好想也知道为什么 Linux 桌面软件生态不行的原因了,微软这么大的公司,给自家系统做的开发工具都这么不好用,linux 生态里各是各家这种,也难为这些 linux 程序员了。
    vituralfuture
        7
    vituralfuture  
       223 天前 via Android
    我实习的时候见过 qt 都能热重载的,原理是通知进程重新链接动态库
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1146 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 17:59 PVG 01:59 LAX 10:59 JFK 13:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86