随笔分类 -  C#

C Sharp,微软的高级编程语言
摘要:首先是工具的下载地址: 动软.Net代码生成器 该工具官网自带完整教程: 文档:http://www.maticsoft.com/help/ 例子:http://www.maticsoft.com/help/maticstudy.htm 需求:项目中需要根据数据库中的表生成相应的C#实体类,通常是一 阅读全文
posted @ 2017-05-16 11:44 霍莉雪特 阅读(2163) 评论(0) 推荐(0)
摘要:光看标题的确不好说明问题,下面描述一下问题场景: 已知后端自定义的返回的Json数据结构如下: response: { "message": "返回成功", "result": [ { "name":"AAA", "age":16 }, { "name":"BBB", "age":17 } ], " 阅读全文
posted @ 2017-05-10 18:31 霍莉雪特 阅读(2435) 评论(0) 推荐(0)
摘要:常见的使用反射的场景: 程序在运行时动态地访问类的成员,如获得类的变量、方法。 例如:用反射给本类的变量赋值。 public class Student{ public string studentName = "小王"; public void Test() { Type type = this. 阅读全文
posted @ 2017-05-10 17:43 霍莉雪特 阅读(347) 评论(0) 推荐(0)
摘要:需求:在包含泛型T的类或方法中,想要根据T的具体类型,进行相应的处理,需求伪代码如下: public void Test<T>() { if(T is string) { // do something } else if (T is Student) { // do somthing } } 最快 阅读全文
posted @ 2017-05-10 11:27 霍莉雪特 阅读(10677) 评论(0) 推荐(1)
摘要:问题: WPF中默认使用的图像的DPI是96。如果我们使用的图素的DPI不是96时(比如是72),那么WPF会把图片的DPI自动改为96,导致图像加载出来的实际大小Width和Height会比想要的大(原图显示大小会是实际图大小的72/96 = 3/4),比如图片会在Image控件内显示超框了。 如 阅读全文
posted @ 2017-04-21 17:09 霍莉雪特 阅读(4329) 评论(0) 推荐(0)
摘要:需求:将图像变形,如矩形图片变换成梯形的,图素拉伸。 解决方案:目前找到有两种。 使用EmguCV,它是.Net版的OpenCV。推荐直接在VS里的Nuget中搜索EmguCV进行下载。 使用第三方库FreeImageTransformation。(网上搜YLScsFreeTransform关键字) 阅读全文
posted @ 2017-04-21 16:02 霍莉雪特 阅读(3083) 评论(2) 推荐(0)
摘要:需求:遍历List列表,当访问的元素符合某一条件时,将该元素移除出列表。 注意点:使用foreach循环遍历无法做到边读边修改,所以要使用for循环。 例子: // 倒序遍历。 for (int i = list.Count - 1; i >= 0 ; i--) { if (list[i].name 阅读全文
posted @ 2017-04-12 09:42 霍莉雪特 阅读(1045) 评论(0) 推荐(0)
摘要:在设计一个返回类型为T的泛型方法时,有时希望能返回空Null,然后会报错: 根据提示,将返回值由Null改为default(T)即可。 default(T)表示返回当前T类型的默认值,如果T为int则返回0。为了使确实能返回Null,可将该T类型继承自class类 where T : class,变 阅读全文
posted @ 2017-03-31 14:56 霍莉雪特 阅读(7889) 评论(0) 推荐(1)
摘要:// DateTime --> long public static long ConvertDateTimeToLong(DateTime dt) { DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970 阅读全文
posted @ 2017-03-31 09:51 霍莉雪特 阅读(14401) 评论(0) 推荐(0)
摘要:参考: http://stackoverflow.com/questions/35804375/how-do-i-save-a-bitmapimage-from-memory-into-a-file-in-wpf-c /// <summary> /// 把内存里的BitmapImage数据保存到硬盘 阅读全文
posted @ 2017-03-29 16:33 霍莉雪特 阅读(3111) 评论(0) 推荐(0)
摘要:问题:工作中涉及到图像的数据类型转换,经常转着转着发现,到了哪一步图像的透明度丢失了! 例如,Bitmap转BitmapImage的经典代码如下: public static BitmapImage BitmapToBitmapImage(System.Drawing.Bitmap bitmap) 阅读全文
posted @ 2017-03-29 14:59 霍莉雪特 阅读(916) 评论(0) 推荐(0)
摘要:前台准备两个Image控件。上面是显示原图,下面显示切割后的效果。 <StackPanel Orientation="Vertical"> <Image Width="450" Height="383" Source="C:\Users\Administrator\Documents\Visual 阅读全文
posted @ 2017-03-28 15:31 霍莉雪特 阅读(3978) 评论(2) 推荐(0)
摘要:先马 http://qrcodenet.codeplex.com/ 使用该工具WPF生成二维码的简单例子: 前台XAML准备一个Image控件显示二维码。 string qrcodeStr = "www.baidu.com"; QrEncoder qrEncoder = new QrEncoder( 阅读全文
posted @ 2017-03-27 11:06 霍莉雪特 阅读(1337) 评论(0) 推荐(0)
摘要:问题:在项目中发现,可以重复多次添加同一个Handler,导致触发时执行多次的问题。 这个现象也很好测试: 前台准备一个Label文本 <Label x:Name="label" Content="测试重复多次AddHandler点击事件" Width="300" Height="200" Hori 阅读全文
posted @ 2017-03-22 17:34 霍莉雪特 阅读(2410) 评论(0) 推荐(0)
摘要:需求:使得Image图片控件能够被拖动。 思路:关键是重写Image控件的几个鼠标事件,实现控制。 前台: <Image Source="C:\Users\Administrator\Documents\Visual Studio 2015\Projects\WpfApplication1\WpfA 阅读全文
posted @ 2017-03-20 09:56 霍莉雪特 阅读(3019) 评论(1) 推荐(0)
摘要:需求:简单的可拖拽的图片 使用System.Windows.Controls.Primitives.Thumb类 前台: <Canvas x:Name="g"> <Thumb Canvas.Left="10" Canvas.Top="20" Canvas.ZIndex="99" DragDelta= 阅读全文
posted @ 2017-03-17 15:41 霍莉雪特 阅读(3496) 评论(2) 推荐(1)
摘要:标题有点描述不清,就当是为了方便自己用时易于搜索到。 总之需求是:显示用户信息(文字)时,允许用户编辑自己的信息。 效果图如下: 点击【编辑】按钮前: 点击【编辑】按钮后,允许编辑: 别吐槽为甚性别还能再改。。。我就是意思意思这个效果 使用了样式,但不是本文关注点,于是省略 按钮的作用也不是本文关注 阅读全文
posted @ 2017-03-11 09:31 霍莉雪特 阅读(1507) 评论(0) 推荐(0)
摘要:需求:机器码可以用于校验用户是否用的同一台电脑登录,比如在别的机器上登录时做强制下线(踢人下线)。通常在用户注册时,计算一次用户的机器码跟随注册信息一起发送给服务器。 机器码的作用看百度百科: 定义规则: 机器码 = CPU序列号 + 硬盘ID + 网卡硬件地址 public class Machi 阅读全文
posted @ 2017-03-08 15:17 霍莉雪特 阅读(9474) 评论(1) 推荐(0)
摘要:需求:按下回车键,触发事件。 搜MSDN时,看到的键盘事件是System.Windows.Forms里的,在WPF中没法用: https://msdn.microsoft.com/zh-tw/library/system.windows.forms.control.keydown(v=vs.110) 阅读全文
posted @ 2017-03-06 18:51 霍莉雪特 阅读(3348) 评论(0) 推荐(0)
摘要:问题: 在做WPF项目时,点击一个按钮弹出一个自定义的窗体,然后点击X关闭该窗体,然后再点击按钮想弹出该窗体时,报错:关闭 Window 之后,无法设置 Visibility,也无法调用 Show、ShowDialogor 或 WindowInteropHelper.EnsureHandle。 解决 阅读全文
posted @ 2017-03-06 16:34 霍莉雪特 阅读(1986) 评论(0) 推荐(2)