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

浙公网安备 33010602011771号