在 Avalonia 中,ScrollViewer 在鼠标滚轮下是没有平滑滚动的,看起来非常生硬。同时, ScrollViewer 也不支持平移、缩放等操作,这使得社区不得不使用为 PanAndZoom 等第三方控件
为此,我编写了 SmoothScroll.Avalonia 库,可以为应用中的所有 ScrollViewer 一键启用平滑滚动支持。同时,库中提供的 ScrollView 控件(继承自 ScrollViewer)还增加了平移和缩放功能
在 Avalonia 中,ScrollViewer 在鼠标滚轮下是没有平滑滚动的,看起来非常生硬。同时, ScrollViewer 也不支持平移、缩放等操作,这使得社区不得不使用为 PanAndZoom 等第三方控件
为此,我编写了 SmoothScroll.Avalonia 库,可以为应用中的所有 ScrollViewer 一键启用平滑滚动支持。同时,库中提供的 ScrollView 控件(继承自 ScrollViewer)还增加了平移和缩放功能
在各类XAML UI框架中,Grid 是一种非常灵活且常用的布局控件,它可以创建复杂的用户界面布局。Grid 允许开发者通过定义行和列来组织界面元素,每个元素可以精确地放置在网格的特定区域内
本文以 Avalonia 框架为例,讲解 Grid 控件的工作原理
在编写UI的过程中,我们通常使用ObservableCollection来监听列表的变化。然而,ObservableCollection只能在添加/移动/移除元素时通知界面,这意味着元素内部更改时,ObservableCollection是无法通知的
如果需要监听列表元素内部的更改,可以使用System.ComponentModel.BindingList。
此错误在使用后台代码合并资源字典时可能触发
事实上,这可能是资源字典而非代码造成的错误,但此错误没有任何有效提示
先使用下图方法在XAML中手动添加出错的资源字典:
此时编译应用,就可以看到正常的报错信息了