我正在使用 Avalonia UI 开发一个相当大的单窗口应用程序,使用Carousel
控件在页面之间切换。正如所料,我的MainWindow.xaml
文件变得非常大。它目前大约有 600 行代码,只完成了一小部分 UI,我认为是时候重构了。我已经UserControl
在存在冗余代码的地方使用了 s。
所以我想知道:缩小主窗口 xaml 文件大小的最佳方法是什么?
由于我使用的是 Avalonia 的 MVVM 版本(我认为还有另一个项目模板,如果我错了,请纠正我)我还必须担心如何处理我的所有绑定MainWindowViewModel.cs
(我通过使类部分进行清理)并将其拆分为多个文件,每个文件都包含我的一个Carousel
选项卡的代码)。
我目前的计划是将每个Carousel
页面外包到一个单独的页面中UserControl
,然后以某种方式Carousel
通过绑定和 Avalonia 属性将引用传递给父页面,以便能够在我的后端页面之间切换,并希望找到一种方法来做到这一点,同时遵守 MVVM 和不会弄乱所有绑定。
我相信这会自己产生新的问题,并且重写会相当痛苦,所以我想我可能不是第一个在一个有点大的项目中使用 Avalonia 的人。那么我的方法有更好的选择吗?
我听说过,StyleInclude
但无法找到关于它的作用、工作原理以及何时使用的全面文档。