
wpf
MAUI和WPF不能共享UI层代码,但业务逻辑、数据模型、服务等非UI代码可复用;需通过.NET6+类库隔离分层,ViewModel遵循MVVM且不依赖UI框架,数据访问与服务通过接口+DI实现跨平台...
System.Threading.Timer适合轻量级单机定时任务,IHostedService适用于.NETCore后台服务,超出现有能力时应升级为Windows服务、Quartz.NET或系统计划...
Avalonia不支持XAML中直接绑定集合索引(如Items[0]),推荐在ViewModel中定义FirstItem等只读属性并监听CollectionChanged;也可用MultiBindin...
必须用Task或Task时:需await、参与异步流或返回结果;async方法仅允许返回Task、Task、void、ValueTask、ValueTask,其中void仅限UI事件处理器。
ConfigureAwait(false)控制await后续代码的执行上下文,避免捕获和回调SynchronizationContext;库代码必须添加以防止死锁和性能损耗,但UI或HttpConte...
在Avalonia中动态添加数据到ListBox,需使用ObservableCollection并绑定Items属性;ViewModel要实现INotifyPropertyChanged,暴露集合属性...
TaskScheduler是C#中控制Task执行线程与排队策略的抽象调度器,非定时器;必须继承并实现QueueTask、TryExecuteTaskInline和GetScheduledTasks三...
XmlDataProvider是WPF中用于XAML直接绑定XML数据的轻量级源,支持内联XML或外部文件加载,通过XPath定位节点,可绑定至ListBox等控件,但仅单向绑定且不支持写回文件。
WinForm多语言需设Localizable=true并用卫星程序集,WPF依赖Uid和MSBuild生成资源;两者均须重启窗体切换语言,共用资源时需注意访问方式、命名规范及键名同步。
Task.Delay(-1)返回永不完成的Task,等效于Timeout.Infinite,需配合CancellationToken使用;Task.WaitAll同步阻塞线程,禁用在UI/请求线程;二...