自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (9)
  • 收藏
  • 关注

原创 C# 生产者消费者队列

BlockingCollection 概述 - .NET | Microsoft Learn

2024-12-05 21:25:01 104

原创 SharpDevelop IDE IViewContent.cs类

在 SharpDevelop IDE 中,视图内容是文档区域中的“窗口”,可以是一个编辑器窗口,也可以是其他类型的窗口,如起始页。属性,可以获取和设置视图内容的剪贴板处理程序。属性,可以获取和设置视图内容的上下文帮助提供者。属性,可以获取视图内容的关闭行为。属性,可以获取和设置视图内容的文件文档提供程序。属性,可以获取和设置视图内容的撤销处理程序。属性,可以获取和设置视图内容的标题。属性,可以获取和设置视图内容的组件变更服务。属性,可以获取和设置视图内容的属性容器。属性,可以获取和设置视图内容的工具宿主。

2024-12-04 14:36:07 965

原创 SharpDevelop FormsDesignerViewContent.cs类

这个文件是SharpDevelop IDE的一部分,它提供了一个表单设计器视图内容类,用于在SharpDevelop IDE中显示和编辑表单设计器。接着,我们创建了一个窗体,并将其添加到设计器宿主的容器中。最后,我们将窗体设置为设计器视图的主视图,并显示设计器视图。这个类的主要目的是提供一个表单设计器视图内容类,用于在SharpDevelop IDE中显示和编辑表单设计器。在实际使用中,你可能需要提供一个自定义的服务提供程序,以满足你的设计需求。参数,用于提供设计器视图所需的服务。

2024-12-04 14:29:44 325

原创 使用AvalonDock实现停靠

该属性成为依赖属性,但您可以通过创建附加属性来解决此问题。此属性可以绑定,并在更改时设置 CLR 属性。您可以在 XAML 中绑定此属性,但如前所述,这将不起作用,因为它不在可视化树中。列也会出现同样的问题。中,您将找到我们将使用的类的解决方法。请将此类复制到您的项目中。在 中创建绑定代理的实例。下面文章中提到了绑定代理的使用。我不确定是否有特定的设计选择或。您的绑定有两个主要问题。

2024-11-21 13:38:55 164

原创 MEF的使用

这意味着你可以在应用程序运行时添加或移除程序集,而不需要重新创建整个容器。此外,你还可以使用其他类型的目录,如。类允许你组合多个目录,以便在单个目录中管理多个程序集中的组件。这对于跨多个程序集加载和发现组件非常有用。(用于扫描文件系统中的程序集)或自定义目录类,并与。现在,在你的主程序或宿主应用程序中,你可以使用。例如,你可能有一个程序集。将每个程序集的目录添加到其中。方法来获取每个类型的程序集,并传递给。首先,确保你的各个程序集都包含使用。来添加这些程序集的目录,并创建一个。来组合多个目录的示例。

2024-11-21 13:34:35 189

原创 ILSpy 中MEF的使用-初始化

【代码】ILSpy 中MEF的使用-初始化。

2024-10-12 15:18:50 130

原创 WPF 的 TreeView.SelectedItem和TreeViewItem.DataContext是一样的对象

但是,这两个属性的用途和设置方式是不同的。绑定到一个数据集合,每个。

2024-10-12 09:32:23 926

原创 MEF 的使用-在菜单生成的使用

这段代码的主要作用是获取所有实现了`IContextMenuEntry`接口,并且具有`IContextMenuEntryMetadata`元数据的类型,并将它们存储在`entries`变量中。`GetExports`方法返回一个`IEnumerable<IExport<TService, TMetadata>>`集合,其中`TService`是服务接口类型,`TMetadata`是元数据接口类型。4. `entries`:将转换后的数组赋值给`entries`变量。

2024-10-11 11:31:25 462 1

原创 WPF 根据坐标获取控件DataContext的例子

它首先将屏幕坐标转换为相对于DataGrid控件的坐标,然后使用VisualTreeHelper的HitTest方法查找指定位置下的元素。如果找到了DataGridCell元素,则使用反射获取DataContext对象中与DataGridCell的列标题对应的属性的值,并将其转换为字符串返回。:获取DataGridCell的DataContext对象的类型,然后使用反射获取DataContext对象中与DataGridCell的列标题对应的属性的值,并将其转换为字符串返回。表示在屏幕上的位置。

2024-10-11 10:59:52 704

原创 SharpDevelop的右键菜单实现

通过解析AddInTree。

2024-06-09 15:09:24 210

原创 编程算法中,有许多经典的问题和挑战

(Minimum Spanning Tree Problem):在一个带权图中找出一棵树,它包含图中的所有顶点,并且所有边的权值之和最小。(Tower of Hanoi):有三根杆子A,B,C。(Knapsack Problem):给定一组物品,每个物品都有自己的重量和价值,以及一个背包的总容量,目标是选择一些物品装入背包,使得背包内物品的总价值最大且不超过背包的总容量。(Graph Coloring Problem):给定一个无向图,用尽可能少的颜色为图的顶点着色,使得任意两个相邻的顶点颜色不同。

2024-05-15 09:54:09 696

原创 在C#中编写递归函数时,为了避免无限递归

总之,递归函数是一种非常强大的工具,可以在许多不同的领域中发挥作用。然而,需要注意的是,在使用递归函数时需要小心处理递归调用的次数,以避免栈溢出等错误。在C#中编写递归函数时,为了避免无限递归(也称为栈溢出),你需要确保递归调用有一个明确的终止条件。这个终止条件通常基于一个或多个参数,当这些参数满足某个特定条件时,递归就会停止并返回结果。:递归步骤是函数的核心逻辑,它描述了如何将问题分解为更小的子问题,并通过递归调用自身来解决这些子问题。的值减小,因此最终会达到基准情况,从而避免无限递归。

2024-05-15 09:52:01 843

原创 OxyPlot关注的窗口(即视图范围)始终设置到数据的最后一段

在OxyPlot中,如果你想要将关注的窗口(即视图范围)始终设置到数据的最后一段,你可以通过动态地更新图表的轴范围来实现。这通常涉及到监听数据的更改事件(如果数据是实时更新的),并在数据更改时调整轴的最小值和最大值。请注意,这个示例假设你的数据是按顺序排列的,并且你想要显示最后一定数量的数据点。对于X轴,你可能想要设置其最小值为你的数据中较早的时间点或值,最大值则为新数据的最后一个点的值。:如果你的数据是实时更新的,你需要监听一个数据更改的事件。:使用OxyPlot的API来更新图表的轴范围。

2024-05-10 19:56:43 368

原创 wpf 树形结构

Simplifying the WPF TreeView by Using the ViewModel Pattern - CodeProject

2024-04-30 15:10:09 818

原创 SharpDevelop插件系统代码阅读笔记

该方法的缺点就是需要传入类名,那么就需要在xml文件里面显示的将类名标记出来,再去解析。但是MEF功能通过Attribute就可以实现,不需要在xml里面显示的标记出来。但是,AddIn的组织方式肯定还是有其独到之处,继续往下看。那么,获取到对象之后,是怎么组织管理起来的呢,是怎么插入到树节点中去的呢?

2024-04-20 16:06:55 336

原创 AddIn

软件项目开发全程剖析》

2024-04-19 23:26:34 263

原创 MEF [ImportMany]

然后,创建一个 CompositionContainer 并使用它来解析 Host 类中的导入。在C#中,Managed Extensibility Framework (MEF) 是一个轻量级的扩展性框架,它允许开发者以解耦的方式创建可扩展的应用程序。当使用 [ImportMany] 时,MEF 会查找所有与指定契约匹配的导出(export),并将它们注入到一个集合中。注意每个类上的 [Export(typeof(IPlugin))] 特性,它告诉 MEF 这些类可以作为 IPlugin 契约的导出。

2024-04-12 09:35:56 460

原创 wpf 写的代码,启动总会弹出 ms-gamingoverlay框

给exe重新起个名字试试。

2024-04-11 15:01:19 227

原创 详细需求的拆解

详细需求的拆解是软件开发过程中的关键步骤,它有助于将复杂的需求分解为更具体、更易于管理的部分。通过综合运用这些方法,可以将复杂的详细需求拆解为更具体、更易于管理的部分,为后续的软件开发工作提供有力的支持。

2024-04-02 10:02:57 879

原创 需求规格说明书

需求规格说明书(Requirements Specification Document,简称RSD)是软件开发过程中的重要文档,用于详细描述软件系统的功能需求、性能需求、约束条件等非技术细节。在编写需求规格说明书时,应根据项目的实际情况和需求进行调整和补充,确保文档内容的准确性和完整性。同时,需求规格说明书应经过相关人员的评审和确认,以确保各方对需求的理解一致。

2024-04-02 09:52:44 3387

原创 linux 的.bashrc .bash_profile .profile分别作用

总结来说,这三个文件都是用于配置用户环境的,但它们的执行时机和范围有所不同。.bashrc主要用于配置交互式shell环境,而.bash_profile和.profile则更侧重于登录时的环境配置。在实际使用中,用户可以根据自己的需求修改这些文件,以定制个性化的shell环境。文件都是用于配置用户环境的,但它们各自的作用和执行顺序有所不同。在Linux系统中,

2024-03-15 10:13:18 974 3

原创 软考资料哈哈哈哈

浏览器输入 https://gitee.com/hyzsbook/rk 可以打开 最好自己注册个账号。

2024-02-05 09:12:50 156

原创 树莓派5 GPIO Wiringpi不支持,使用gpiod控制IO(已解决)

买了树莓派5才知道,Wiringpi不支持树莓派5了, Wiringpi官方好像不更新了。

2024-02-03 11:30:31 2663 1

原创 程序员必备的面试技巧

程序员必备的面试技巧,就像是编写一段完美的代码一样重要。在面试战场上,我们需要像忍者一样灵活,像侦探一样聪明,还要像无敌铁金刚一样坚定。只有掌握了这些技巧,我们才能在面试的舞台上闪耀光芒,成为那个令HR们心动的程序猿!总之,在程序员面试中,除了展示自己的技能和经验外,还需要注意以上提到的面试技巧。提示:可以分享自己面试时候的经历。

2024-01-13 20:53:23 464

原创 C# 中,接口和抽象类的区别,分别在什么时候使用

在C#中,接口和抽象类都可用于创建可由子类实现和继承的规范。尽管它们有相似之处,但在使用场景和行为上存在显著差异。总结:选择接口或抽象类取决于你的具体需求和设计意图。在定义一组行为规范时,通常使用接口;而在需要共享某些代码或状态时,通常使用抽象类。

2024-01-13 20:50:51 946

原创 SourceInsight 设置的更好用

1.去掉搜索确定2.改为相对路径。

2024-01-13 13:34:12 367

原创 OpenPLC v3 代码结构

总的来说,OpenPLC v3 的代码结构比较清晰,模块划分明确,实现了核心模块、主设备模块、从设备模块、控制模块和 GUI 模块的分离。- DefaultDNP3SlaveApplication:默认的从设备应用层,实现 DNP3 协议的 Master-Slave 通信。Slave 模块包含 DNP3 协议的实现,用于接收主设备发送的数据和执行相应的控制操作。- DNP3Slave:从设备类,负责接收主设备发送的数据和执行相应的控制操作。2. Master:主设备模块,实现与从设备通信的接口。

2024-01-11 22:47:50 975

原创 C#中,unsafe、fixed和checked关键字

在C#中,unsafefixed和checked关键字都是用来控制代码执行和内存访问的。下面我将分别解释这三个关键字的作用。

2023-12-27 14:40:13 1222

原创 整理输出目录的Visual Studio的批处理脚本

总的来说,这段脚本的目的是将项目中的所有文件和文件夹(除了指定的排除项)移动到一个名为“lib”的新文件夹中。这段指令是一个Visual Studio的批处理脚本,主要用于移动所有的程序集和相关文件到。

2023-12-23 11:54:40 741

原创 .net中httpclient 怎么发送student 到httpserver

在.NET中,你可以使用HttpClient来发送数据到HTTP服务器。然后,我们获取服务器的响应并打印出来。请注意,你需要将示例中的URL替换为你自己的服务器端点URL。方法将Student对象转换为JSON字符串,并发送一个POST请求到服务器的。在上面的示例中,我们使用HttpClient的。

2023-12-18 11:40:50 408

原创 在.NET中,如果你需要自动填充测试数据

在.NET中,如果你需要自动填充测试数据,有一些NuGet包可以帮助你实现这个目标。

2023-12-18 11:11:33 654

原创 VS2022 和 2019 启动 xaml界面的热重载功能 需要新增环境变量

这个配置。

2023-12-08 17:28:06 878

原创 WPF DataGrid 里面的ToggleButton点击不生效

已解决:根本原因是没写UpdateSourceTrigger=PropertyChanged。具体原因参考下面文章:鸣谢作者。

2023-12-08 12:34:58 1043

原创 在C#中,PropertyInfo.SetValue方法用于设置属性值

在C#中,PropertyInfo.SetValue方法用于设置属性值。该方法接受两个参数:对象实例和属性值。

2023-12-06 21:22:52 1155

原创 Prism 的 IOC、Model功能展示

【代码】Prism 的 IOC、Model功能展示。

2023-12-03 11:16:32 507

原创 使用WPF设计时绑定加快开发速度

知识来源:B站up主 香辣恐龙蛋。

2023-12-03 10:42:23 395

原创 localhost和127.0.0.1在以下四个方面存在区别

总的来说,localhost和127.0.0.1在原理、概念、使用场景和安全性方面都存在明显的区别。在使用时需要根据具体的需求和场景选择合适的方式。以上信息仅供参考,建议咨询专业网络工程师或者查阅相关技术手册获取更全面和准确的信息。

2023-12-02 09:05:41 1299 1

原创 git 打包差异文件方便现场更新补丁包的方法

如果想要打成压缩包则:将temp目录下的所有文件打包为modules.tar.gz。# 在源代码根目录,使用git status命令获取已修改文件的列表。# 将已修改文件列表逐一复制到当前目录下的0.Update目录。# 在当前目录下,创建0.Update目录。

2023-12-01 15:43:46 521

原创 给DataGridColum写模板解决原有的checkbox需要双击才能选中的问题

2023-11-27 23:31:39 506

原创 WPF拖拽相关的类

在上面的示例中,我们首先获取当前窗口的VisualTree。如果找到了具有特定名称的元素,我们可以对该元素执行任何所需的操作,例如更改其背景颜色。WPF的VisualTreeHelper类是一组静态方法,主要用于在WPF的VisualTree(可视化树)中进行遍历和查找操作。AdornerLayer是一种特殊的Panel,它能够将装饰器(Adorner)与要装饰的元素关联起来。总的来说,WPF的DragAdorner是一种装饰器,它可以提供各种视觉效果和功能,以增强用户体验。

2023-11-18 20:25:45 602

C# MEF Demo 使用例子,学会使用Mef

C# MEF Demo 使用例子,学会使用Mef

2024-05-29

MFC界面开发的一个小demo

内含git 记录,一步步的记录如何开发界面及消息机制。总的来说MFC开发还是太麻烦了。

2021-03-09

CCS开发MSP430手册-Code Composer Studio v7.x for MSP430 User's Guide.pdf

CCS开发手册

2019-10-23

Linux设备树调试方法-很好的一个外文文献.pdf

Linux设备树调试方法-很好的一个外文文献,讲解了设备树的原理及如何在设备树文件更改之后出现问题的调试方法。适合对设备树不是很了解的人看。

2019-09-10

Ubuntu-unity-tips-tricks-rev-2 Ubuntu unity的相关配置操作说明

Ubuntu unity的相关配置操作说明 ,从谷歌下载的希望对大家有用。

2019-04-26

simulink-stateflow使用及代码优化

simulink-stateflow使用及代码优化 在学习simulink中的笔记,先上传,后面继续更新。

2018-05-30

状态机学习笔记

QP状态机学习过程中的笔记,还没完成,先上传,后面更新。

2018-05-30

AT91SAM9261S

AT91SAM9261S 一个ARM9内核的单片机,可以看看 Incorporates the ARM926EJ-S™ ARM® Thumb® Processor – DSP Instruction Extensions – ARM Jazelle® Technology for Java® Acceleration – 16 Kbyte Data Cache, 16 Kbyte Instruction Cache, Write Buffer – 210 MIPS at 190 MHz – Memory Management Unit – EmbeddedICE™, Debug Communication Channel Support

2018-05-04

STC15F104E (8脚单片机)实现蓝牙串口控制舵机转向

STC15F104E (8脚单片机)实现蓝牙串口控制舵机转向

2017-05-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除