- 博客(97)
- 资源 (67)
- 收藏
- 关注
原创 HarmonyOS开发-问题记录
然后新建模拟器,给了8G内存,8核CPU,重新启动了下。我的模拟器启动失败,最后镂空显示个手机框,无法使用。管理员方式cmd输入。
2024-02-22 14:05:20 232
原创 我的高中数学笔记
有点像数据库的表关系,有点像分类y=kx+b由元素到集合,由集合关系推出关系,引出 定义域和值域单射,满射,有单有满引出 f(x)=.... 关系式,分段函数y = kx+b y=1/x y=x的平方 等对应法则 x的范围 定义域, 决定值域哪些列举法,解析式法, 图像法定义域和规则相同的,就是同一个函数常用的函数的定义域复习。
2023-11-24 23:54:38 216
原创 [Aaronyang] 写给自己的WPF4.5 笔记8[复杂数据处理三步曲,数据视图精讲]
接下来,我们需要在xaml中定义个视图,关于 CollectionViewSource有2个属性:View封装了视图对象,Source封装了数据源,还有其他的属性,例如排序,分组,过滤事件。在上篇博客中,我们说到了 binding的二次处理,其中有个思路就是 值转换器,WPF的分组中提供了Converter参数,所以我们可以试着新建一个实现IValueConverter类,以达到产生很多组名,就好比每个视图中的每个对象有了新属性组名字,这样listbox指定了分组样式后就知道了如何进行分组,从而显示了。
2023-11-24 23:54:14 207
原创 [Aaronyang] 写给自己的WPF4.5 笔记6[大数据加载与WPF4.5 验证体系详解 2/3]
普通的加载真正创建了1万个ComboBoxItem对象,所以很占内存,而虚拟化,就是他对数据进行了分页,每次只创建那么多你可见的数据给你,所以内存占用的少,而有的人自己实现个虚拟面板,就是滚动时候,删除上面的元素,增加新元素。像实时监控曲线就是这个思路,它不停地在图标控件画线移动,就是就是固定长度的线条数,超过长度,就会删掉前面的点,从而减少内存占用。这个说法也是应该的,因为绑定的属性的Age,界面的Age变了,才能作用到源,也就是对象的Age,这样才能触发验证的代码,所以Mode的前提是必须的。
2023-11-24 23:54:04 218
原创 [Aaronyang] 写给自己的WPF4.5 笔记2[依赖属性]
人生的意义不在于拿一手好牌,而在于打好一手坏牌 因为以前的经验,所以继承FrameworkElement,我就简写继承FWE ,继承UIElement就写继承UIE 后面重头戏就是blend中的开发,不想写的千篇一律。个人感觉,下面的这张图标比较重要,它或许有些帮助。我看东西只看分析出原理,你就可以拓三返一。Tip: 只能为依赖对象(继承自DependencyObject的类)添加依赖属性。放心的事,wpf大部分都间接继承了。依赖属性提高的不仅仅是性能。插曲:如果想更进一步了解.net framework,
2023-11-24 23:53:44 97
原创 [Aaronyang] 写给自己的WPF4.5 笔记1[布局]
TextBlock Margin="3" Text="测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈测试一段文字哈哈哈哈哈哈哈哈哈啊哈哈哈哈" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3"></TextBlock>
2023-11-24 23:53:30 60
原创 [Aaronyang]写给自己的WPF4.5 笔记3 [MenuItem中的icon]
敢于尝试,就等于你已经向成功迈出了第一步=============时隔两年后再看WPF==========因为以前的经验,所以继承FrameworkElement,我就简写继承FWE ,继承UIElement就写继承UIE后面重头戏就是blend中的开发,不想写的千篇一律。如果期待,左侧有关注按钮。
2023-11-24 23:53:19 587 1
原创 [AaronYang]C#人爱学不学22 - 线程同步和锁
多个线程同时访问共享数据的时候,线程同步能够防止线程损坏。之所以强调同时,是因为线程同步问题其实就是访问时间问题。如果有些数据会被多个线程访问,但是这几个线程访问的时间都是错开的,不会同时接触到数据,那完全就用不到线程同步。线程同步会遇到几个问题,所以能避免使用就别用:使用繁琐,容易出错:你需要清楚的明白哪些数据可能是会被同时访问的,然后用一个锁锁住它,确保一次只有一个线程能够访问。如果任何一块数据被漏了,那就会有问题。没法确定你所有用锁的方式一定正确:只能靠测试和经验。
2023-11-24 23:53:05 89
原创 [Aaronyang] 写给自己的WPF4.5 笔记9[复杂数据处理三步曲,数据展示ListView]
我们新建Themes,然后新建generic.xaml文件,添加下面的样式,在AView.cs中查找ResourceId为AView的,即DefaultStyleKey对象,使用TargetType指定这个样式使用者是ListView,继承ListBox的样式。运行项目后,用户如果不会操作就会出现虚线框,所以我们需要定义Item的模板,我们在上面的样式上写。ay总结:一句话,控件提供者,给用户提供了 约定资源,相当于资源接口,你可以通过ComponentResourceKey找到该位置,并填写它,覆盖它。
2023-11-24 23:52:32 93
原创 ay wpf avalonedit记录
官方示例<RuleSet><RuleSet></RuleSet></Span>-- ... -->| \b([eE][+-]?[0-9]+)?</Rule></RuleSet>给颜色取名字,下方定义规则下面定义个lua的高亮规则新建个txt,改名字lua.xshd 文件类型改为 嵌入的资源,你也可以是资源,主要嵌入到程序还能读取xml内容</RuleSet><RuleSet><RuleSet></RuleSet></Span>
2023-11-24 23:52:10 192
原创 [AaronYang]C#人爱学不学23 -websocket-sharp
新建文件夹,git cloneMIT许可websocket-sharp 支持:RFC 6455WebSocket 客户端和服务器Per-message压缩扩展安全连接HTTP 身份验证查询字符串、Origin 标头和 Cookie通过 HTTP 代理服务器连接.NET Framework 3.5 或更高版本(包括兼容环境,例如 Mono)新建2个wpf项目nuget引用示例1创建server端,方便测试。
2023-11-22 09:12:07 230
原创 [AaronYang]C#人爱学不学21- 一些锁
为什么说它是轻量级呢?因为它仅对整形数据(即int类型,long也行)进行同步。具体使用如下表:Interlocked.Increment(ref value)数值加一(原子性操作)Interlocked.Decrement(ref value)数值减一(原子性操作)Interlocked.Exchange(ref value1, value2)交换:把值2赋给值1;返回新值。
2023-11-22 09:10:49 55
原创 ay maui in net6 第13天 数据绑定基础
平台MAUIWPF字体颜色TextColorForeground垂直对齐字体加粗/斜体等FontWeight和FontStyle水平对齐背景色BackgroundLabel的TextAlignmentButton按钮边框厚度旋转自带Rotation配合Transform依赖属性边框颜色环境上下文。
2023-11-22 09:10:35 136
原创 ay maui in net6 第12天 基本xaml
..这样使用时候,可以省去 <ContentPage.Content>...平台MAUIWPF字体颜色TextColorForeground垂直对齐字体加粗/斜体等FontWeight和FontStyle水平对齐背景色BackgroundLabel的TextAlignmentButton按钮边框厚度旋转自带Rotation配合Transform依赖属性边框颜色。
2023-11-22 09:10:23 69
原创 ay maui in net6 第11天 入门
新建的vs2022 preview自带maui模板了,这里假设你是从wpf转行过来学习的,所以有些地方觉得简单的,我就不记笔记了项目结构=========AppShell.xaml是个Page类型,这里显示,内部放入了 MainPage的子内容<Shell</Shell>这里有个Route属性,我以为是写页面相对路径的,看来不是,后面再看看干啥用的我尝试新建个Views文件夹,把MainPage.xaml拖进去了这里真的等了一段时间,不知道是不是vs的问题。
2023-11-22 09:10:12 51
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-导航服务传参[9/16]
下面的例子:从一个页面打开另一个页面, 并给第二个页面传递参数值。
2023-11-22 09:09:59 128
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-Bubbling[8/16]
在一个列表控件中,每个数据模板中 比如有按钮,单击事件绑定vm的命令,一般都是找到最根部的datacontext,那么在cm中有更简单的方式如何将动作从子视图模型冒泡到父视图。
2023-11-22 09:09:45 51
原创 [AY]写给自己的Kettle笔记3
这里都是基本操作,不要嫌弃太简单了,后面配合其他的配合其他的操作,这块都跳过了。外侧运行就行了,这样第二个库中的UserInfo表有数据了。同样的,作业可以嵌套作业和转换,那么就可以无限嵌套了。按住shift 从表输入 拖到 表输出 建立环节关系。看到这,想到quartz.net了。拖个转换,可以指定转换文件。这样我们可以控制一个流程。右侧拖入 表输入 表输出。双击作业,选择个作业文件。他可以表示一个过程了。
2023-11-22 09:09:29 62
原创 [AY]写给自己的Kettle笔记2
【Simple-jndi】存放Kettle使用JNDI方式连接数据源方式的文件存放目录。DB连接:显示当前transformation中的数据库连接,每一个transformation的数据库连接都需要单独配置。【Lib】存放Kettle所使用到的第三方jar包。【Plugins】存放Kettle自定义插件时,需要把自定义好的插件打成jar放在此目录。这个箭头是蓝色的,不是禁用(灰色的)时候,下个环节才能从输入流中获得信息。这里列出的是 转换 中可以调用的环节列表,可以鼠标拖动的方式 添加环节。
2023-11-22 09:09:19 68
原创 [AY]写给自己的Kettle笔记1
在Oracle数据库中不能新建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决,在创建一个用户的同时为这个用户创建一个与用户名同名的schem并作为该用户的缺省shcema。如果把database看作是一个仓库,仓库很多房间(schema),一个schema代表一个房间,table可以看作是每个房间中的储物柜,user是每个schema的主人,有操作数据库中每个房间的权利,就是说每个数据库映射的user有每个schema(房间)的钥匙。试过javahome的配置方式,会出错。
2023-11-22 09:09:04 42
原创 [AaronYang]C#人爱学不学20-MEF
4.0 以后引入了MEF应用/插件均使用约定好的协议(接口)进行开发。系统将自动扫描指定文件夹,并按协议自动导入。项目添加System.ComponentModel.Composition.dll在任意地方Export导出一个类型,在任意地方可以导入 Import类型,如上,我们使得接口具有示例了。using ILog;set;pro.Run();void Run()CurrentLogService.Log("MEF日志测试通过");
2023-11-22 09:08:51 98
原创 [AaronYang]C#人爱学不学19-Castle.NET 4.0
Console.WriteLine("打开手机标记,开始送单...");Console.WriteLine("kfc商家发布一个送餐任务");Console.WriteLine("KFC的外卖,开始派送");Console.WriteLine("KFC的外卖,派送了");Console.WriteLine("有骑手接受派单任务了");为什么必学,他是一个IOC,也是目前很好的一个动态代理技术,实现AOP拦截。Console.WriteLine("结束派送");这才是真正干净的代理模式啊。
2023-11-22 09:08:28 29
原创 [AaronYang]C#人爱学不学16-创建快捷方式
MsiHelper.CreateDesktopLink(你的文本, string.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, AppDomain.CurrentDomain.FriendlyName), string.Format("{0}", AppDomain.CurrentDomain.BaseDirectory), 启动参数, desc);
2023-11-22 09:08:14 124
原创 [AaronYang]C#人爱学不学15- Semphore
Console.WriteLine(thrd.Name + "正在等待一个许可证……Console.WriteLine(thrd.Name + "申请到许可证……Console.WriteLine(thrd.Name + " 释放许可证……//创建一个可授权2个许可证的信号量,且初始值为2。// //这就是说除了调用该信号量的线程都将被阻塞。// //我设置一个最大允许5个线程允许的信号量。// //并将它的计数器的初始值设为0。
2023-11-22 09:07:58 42
原创 [Aaronyang] 写给自己的WPF4.5 失传的秘籍[多扩展显示器编程]
核心代码在DEMO里面,自己看吧(发布时间:2015年1月5日,资源删除时间2015年1月10日,需要下载的赶快下吧)需求:比如A主机,打开4个窗体,外面接了3个显示器,点击程序的按钮,直接其他3个窗体,分别最大化显示在其他的显示器上。1. 你只要理解 所有的屏幕拓展后,会是一个大屏幕,每个屏幕都是一个对象,根据这个对象就可以拿到 每个显示器的信息。获得显示器对象,然后在这个显示器里面show,哎~AaronYang告诉你,这可是一个不归路!餐饮收费系统,网吧系统等。3个窗体,一个主屏幕的窗体,用于操作。
2023-11-22 09:07:45 59
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-Conductor[7/16]
通过发布订阅的方式 在VM之间 传递界面与界面的操作在多个需要传递操作的vm中也需要加。
2023-11-21 09:07:14 91
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-EventAggregation[6/16]
通过发布订阅的方式 在VM之间 传递界面与界面的操作在多个需要传递操作的vm中也需要加。
2023-11-21 09:06:39 48
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-Execute 异步里面更新界面UI[5/16]
新建 ExecuteViewModel添加ExecuteView.xaml和ExecuteView.xaml.cs添加2个按钮<Grid><Button x:Name="StartUnSafeBackgroundWork" Content="非安全更新"/><Button x:Name="StartSafeBackgroundWork" Content="使用CM的Execute.OnUIThread"/></Grid></Page>
2023-11-21 09:06:24 78
原创 [Aaronyang]写给自己的WPF4.5 笔记5[数据绑定1/3]
下载教你如何在vs2013中不安装Mssql数据库,使用了Sqlserver Compact,以及全部ef操作这个数据库。教你从后台取数据,怎么绑定前台数据,并通过wpf的方式更新界面数据,ObservableCollection和属性通知教你如何绑定集合的数据,教你如何关联的前台绑定集合数据教你使用前台绑定radiobutton和简单的值转换器,字符格式化器教你使用了AY自己亲自制作的AyRadiobuttonList,此控件还在拓展,性能已经最大化的优化了,暂不支持虚拟化加载大数据。
2023-11-21 09:06:09 108
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-Coroutine协程[4/16]
这里我们会用CM的 IResult接口我们先定义个ResultBase,后面每个任务都继承ResultBase新建一个Results文件夹});});这里有个很常用的类Execute,用于在非UI线程 处理业务时候,然后切换到界面线程去执行指定Action的,还有判断是不是在开发模式还是运行模式InDesignModeCM中提供了一个实现了IResult的TaskResult方便您使用,顺便提供了TaskExtensions可以把Task转为IResult。
2023-11-21 09:05:53 52
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-调用vm的方法[3/16]
增加个TaskHelper,后面用的到#else#endif新建 ActionsViewModel.csprivate string output="输出";新建ActionsView.xaml非常重要的2个引入xmlns:i="非常重要的待通知的属性写法,继承了Screen类后</Style><Grid></Grid></Page>在Bootstrapper.cs修改Configure()container。
2023-11-21 09:05:40 82
原创 ay wpf in net6 第10天 - 练手项目UI案例1 第11-20步
全当练手 布局和一些基本思路,实际使用需要配合 数据绑定,动态生成的数据11 信息卡片<!--信息卡片--><GridGrid.Row="1"Margin="50201540"><Grid.ColumnDefinitions><ColumnDefinitionWidth="*"/>
2023-11-21 09:05:12 70
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro-绑定[2/16]
修改BindingsView<Grid></Style></ListBox></Grid></Grid></Page>在ViewModels和Views 都新建 Activity文件夹,以后默认都同步新建文件夹,这也是CM命名规则,只认namespace,这也是为了防止出错。ListBox使用Activities名称,所以后台有个Activities的集合,集合的Item只能是一个类型,所以我们放父类,拓展两个子类类型对应的<Grid>
2023-11-21 09:04:42 68
原创 Ay写给2022的纯xaml [wpf4net5] - Caliburn Micro[1/16],MyGet
终于有点可以学习的时间了,决定系统化折腾下net5版本的wpf的相关技术栈的程序集第一站就是看下最新版本的CM的变化。我的以前相关的文章同类MVVM通过git方式:git initgit clone相关文章在 Visual Studio 中打开 工具 -> 选项 -> NuGet 包管理器 -> 包源:其他nuget源如果打不开。
2023-11-21 09:03:36 65
原创 [AaronYang]C#人爱学不学14- volatile
换句话说,另一个线程可能已经改 变了它线程内的i1值,而这个值可以和当前线程中的i1值不相同。因此实际上存在一种可能:“主”内存区域里的i1值是1,线程1里的i1值 是2,线程2里的i1值是3——这在线程1和线程2都改变了它们各自的i1值,而且这个改变还没来得及传递给“主”内存区域或其他线程时就会发生。volatile是C#中用于控制同步的关键字,其意义是针对程序中一些敏感数据,不允许多线程同时访问,保证数据在任何访问时刻,最多有一个线程访问,以保证数据的完整性,volatile是修饰变量的修饰符。
2023-11-21 09:03:17 71
原创 GIT一些记录
你入职了一家公司,公司有代码,有的用gitlab搭建的代码管理获取代码 git clone git地址查看分支 git branch查看所有分支 git branch -a切换分支 git checkout 分支名创建本地分支 git checkout -b 分支名创建本地分支并把服务器分支赋予 git checkout -b 分支名 origin/分支名添加所有代码 git add .提交代码到本地并备注信息 git commit -m '你的备注'获取最新代码 git pull。
2023-11-21 09:02:56 61
[茗洋]MyNPOI_V1.2
2013-06-03
ASPNET MVC4 In Action 第二章代码
2013-04-01
JavaScript深入【表达式和运算符(上集)】相关代码和图片
2013-03-24
Sublime 2217 汉化 破解版本
2013-03-22
ASPNET MVC4 In Action 第一章代码
2013-01-31
CKEditor3.6.4+CKFinder2.3(破解) asp.net版本和教程
2012-10-29
(兼容XP系统)多线程异步编程带进度条的利用Excel模版报表转换
2012-09-16
多线程异步编程带进度条的利用Excel模版报表转换DEMO
2012-09-01
杨洋疯狂C#第1期_winform鼠标篇
2012-07-13
杨洋疯狂C#第一期 Jquery相关代码
2012-07-12
杨洋疯狂C#第1期_C#基础知识代码
2012-06-10
Photoshop Ipad原创制作素材
2012-06-01
设计模式-简单工厂模式《搭积木》
2012-05-24
sqlserver 实体类代码生成器,自己做的
2012-05-13
惠客优惠券打印系统(OOP思想,前后台,源代码)
2012-02-02
IT字符转换解码器等(包含源代码)
2012-02-02
AjaxControlToolkit.Binary.NET4 和3.5 和2.0
2012-01-04
北大青鸟 C#酒店管理系统 源代码 功能大大升级
2011-12-31
angela_0.7.1 JQueryUI框架
2011-11-19
MyNPOI_V1.2
2013-06-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人