草庐IT

WPF使用Microsoft.Toolkit.Mvvm框架记录

前言为了解决WPFUI与程序逻辑之间得到解耦,所以使用Microsoft.Toolkit.Mvvm框架来实现,说真的开发逻辑真的有些不适应,不过理解就好。框架大体支持ICommand、IMessenger等。什么是MVVM?MVVM是Model-View-ViewModel的简写。它本质上就是MVC(Model-View-Controller)的改进版。即模型-视图-视图模型。分别定义如下:【模型】指的是后端传递的数据。【视图】指的是所看到的页面。【视图模型】mvvm模式的核心,它是连接view和model的桥梁。它有两个方向:一是将【模型】转化成【视图】,即将后端传递的数据转化成所看到的页面

c# - 在基于 .NET 4.5 的游戏服务器上使用套接字的最佳实践?

我正在使用C#开发一个相对较小的射击游戏项目,该项目必须以体素block的形式发送map数据,以及玩家移动数据、战斗数据和future可能的其他内容。我已经决定使用protobuf-net对服务器和客户端之间的数据进行序列化/反序列化,但我不知道应该以何种方式发送数据包。examplegivenbyprotobuf-net使用TcpListener.BeginAcceptTcpClient但警告该示例绝不是最佳实践。我的目标是在单个服务器上支持至少30个用户,但当然我更愿意增加到64个,同时不会变得太慢以至于射击游戏甚至远程实用。我应该如何建立TCP连接和处理数据包?

循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(2)

在前面随笔《循序渐进介绍基于CommunityToolkit.Mvvm和HandyControl的WPF应用端开发(1)》中介绍了Mvvm的开发,以及一些界面效果,本篇随笔继续深入探讨基于CommunityToolkit.Mvvm和HandyControl的WPF应用端开发,介绍如何整合SqlSugar框架的基础接口,通过基类继承的方式,简化实际项目的开发代码处理。1、View模块中的XAML格式说明在介绍MVVM几个部分内容之前,我们先连接一下View模块中的Xaml格式的说明,我们知道Xaml也是一个xml的扩展,属于标记语言的一种,编辑器为了更好的验证格式以及提出上下文的智能提示,必然需

WPF异常处理详解

总目录文章目录总目录一、WPF异常1未捕获异常2模拟未捕获异常场景二、处理未捕获异常1DispatcherUnhandledException异常捕获2UnhandledException异常捕获3UnobservedTaskException异常捕获4异常捕获的综合使用结语一、WPF异常1未捕获异常正常情况下,开发过程中都会使用try…catch在可能会出现异常的地方去捕获和处理异常。然而实际上开发过程中,由于开发疏忽和一些未知原因,程序中会存在未被处理的异常,当程序运行到此,可能会导致程序崩溃的情况,这样会大大的降低用户的使用体验。对于这种未发现未处理的异常,称之为未捕获异常(Unhand

WPF 已知问题 传入错误数据给到 WriteableBitmap 可能导致渲染线程锁住

本文记录一个WPF已知问题,此问题已经被我修复。传入错误的数据给到WriteableBitmap对象,比如调用WritePixels时传入错误的stride数值,将可能导致渲染线程进入无限自旋锁问题描述应用程序停止渲染,或者是界面未响应。表现是在渲染线程卡住,从任务管理器看可以看到有一个CPU核在跑,但没跑满。进行本机代码调试可以看到卡在如下调用堆栈 wpfgfx_cor3.dll!CWGXBitmapLockState::LockRead()line1086 C++ wpfgfx_cor3.dll!CWGXBitmap::HrLock(consttagRECT&rcLock={...},Mi

Wpf依赖属性介绍和用法举例

依赖属性(DependencyProperties)是WPF中一种特殊的属性系统,允许属性值在不同元素之间自动传递、继承和改变。这使得在WPF中可以实现数据绑定、样式、动画、元素关系和其他高级功能。以下是一个示例,演示了如何创建和使用依赖属性:usingSystem.Windows;publicclassCustomButton:DependencyObject{//定义依赖属性publicstaticreadonlyDependencyPropertyButtonTextProperty=DependencyProperty.Register("ButtonText",typeof(stri

S905L(P211)盒子刷android tv以及刷emuelec 4.4/4.5的向导/方法

关于我:本人主要在某二手平台出售电视盒子,在销售中面临很多问题,于是自己解决,发现了很多玩机技巧,所以把一些资源分享出来。今天分享如何给S905L平台(P211)的盒子刷国际版(atv7.1),以及刷emuelec4.4以上的方法。 欢迎进入本人的咸🐟号“柯柯爱糖糖”获取刷机一条龙服务 写在前面:在正文之前我们首先要了解什么是aidan'srom,您可以简单地理解成它是一个国外专门为晶晨(Amlogic)平台适配atv固件的项目。本文的固件由aidan'srom重新打包而来,看到这里您是否会很激动呢?应该很多人都想体验原生系统吧。我们同样需要了解什么是emuelec,它是一款主要面向晶晨(Am

循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(1)

在我们的SqlSugar的开发框架中,整合了Winform端、Vue3+ElementPlus的前端、以及基于UniApp+Vue+ThorUI的移动前端几个前端处理,基本上覆盖了我们日常的应用模式了,本篇随笔进一步介绍前端应用的领域,研究集成WPF的应用端,循序渐进介绍基于CommunityToolkit.Mvvm和HandyControl的WPF应用端开发。1、基于CommunityToolkit.Mvvm开发WPF应用MVVM是Model-View-ViewModel的简写。类似于目前比较流行的MVC、MVP设计模式,主要目的是为了分离视图(View)和模型(Model)的耦合。它是一种

4.5 监控项目工作

文集:《35小时通关软考高项》上篇:《4.3制定项目管理计划》下篇:《4.6实施整体变更控制》章节概要监视和控制项目工作过程是监视和控制启动、规划、执行和结束项目所需的各个过程。考点监控项目工作过程的对象对照项目管理计划比较项目的实际表现。评价项目的绩效,判断是否出现了需要采取纠正或预防措施的迹象,并在必要时提出采取行动的建议。分析、跟踪并监视项目风险,确保及时识别风险,报告其状态,执行适当的风险应对计划。建立有关项目产品以及有关文件的准确和及时的信息库,并保持到项目完成。为状态报告、绩效测量和预测提供信息支持。为更新当前的成本和进度信息提供预测。分析技术在项目管理中,根据可能的项目或环境变量

在Window10和Window11系统,WPF使用Viewport3D 渲染失败问题解决方案

    最近遇到个棘手的问题:在供应商提供的戴尔optiplex3000的12代处理器主机的集成显卡Intel(R)UHDGraphics770上使用Viewport3D渲染失败(3D模型显示不了,或者是显示不全),之前开发验证使用的是集成显卡Intel(R)UHDGraphics630、集成显卡Intel(R)HDGraphics4600、集成显卡Intel(R)UHDGraphics6300的主机都是没有问题的。******************************************************************************************