如题,是个前端,主要写 Vue ,有用过 Qt 。因为最近有个需求 WPF 比较契合,所以打算试试,原生状态下一切都好,但作为前端,国际化和明暗主题切换肯定也是要做的,然后就发现自己不一定能搞定了。
ResourceDictionary
能不能根据 x:Name
之类的属性修改特定项?因为现在我国际化是这么做的,翻译文件都是 .xaml
然后在 App.xaml 中指定好默认的语言, 要切换的时候清空,但是之后主题切换会往 MergedDictionaries
里加别的类型的资源文件,然后就不能一下子清空了。
有没有办法获取到这里 x:Name="i18n"
这项,然后可以对其 Source
进行修改,或者直接只删掉这项重新添加新的也可以?
目前在试 Material Design ,但是使用体验和 Web 有很大不同:一个是控件的可配置属性和使用不明确,另一个是换肤好像颜色选择比较局限?提供的颜色都有种,不是很想用的感觉,但也没找到什么方法比如能用 rgba 颜色设置主题。
标题栏肯定也需要纳入主题切换范畴,原生不太好做,自己写看资料坑好像有点多,有没有推荐的写的比较好的那种自定义标题栏插件?
第一次写 WPF ,也不知道什么样子比较好,有没有那种比较优秀的开源 WPF 项目可以参考下的?
我自己的程序目前规划比较简单,最最基础的就这两栏。
1
wizzer 2022-12-26 10:54:15 +08:00
这个一搜就有答案的问题,不需要发帖。
|
2
ysc3839 2022-12-26 11:23:09 +08:00
啥需求?直接用 WebView 吧。
|
3
lzj724 2022-12-26 11:44:20 +08:00
electron 不香吗
|
4
youyouyou0123456 2022-12-26 11:54:56 +08:00
1. WPF 有 dynamicresource staticresource 的概念,换肤之类一般用动态资源实现。
2. 库我推荐 WPFUI https://wpfui.lepo.co/ ,我看过部分实现,我觉得很不错,但是你是新手可能会太复杂,有简单的 UI 库 handycontrol 。 3. 大部分问题上 stackoverflow 搜,得到的结果会比在这里发贴会好很多,你可以试试。 |
5
steins2628 OP @wizzer 大部分问题确实靠搜索解决完了,第一个还是有点不懂,剩下两个可以算是求推荐,因为完全没有这方面相关的经验
@ysc3839 写过 Tauri ,WPF 是为了兼容 win7 才打算写的 @lzj724 electron 还是太大了,win10 及以上会用 Tauri 实现 @youyouyou0123456 谢谢指点,我去看看 |
6
ysc3839 2022-12-26 15:22:01 +08:00
@steins2628 用 Edge WebView2 和 CEF 也都能兼容 Win7 。
|
7
steins2628 OP @ysc3839 我知道我知道,只是我对桌面端软件最推崇的形态就是 portable 。
很多人 win7 估计也不怎么会装 webview2 ,最好使用起来这种多余的步骤少一点。 Edge WebView2 和 CEF 我也会了解下,谢谢指点。 |
8
ysc3839 2022-12-26 21:22:33 +08:00
@steins2628 Edge WebView2 可以自带运行环境,也可以在自己的程序里加上安装功能。
|