07 2013 档案

序列化Color对象
摘要:如下:public class Class2{ [XmlIgnore] public Color Color1 { get { return color1; } set { color1 = value; } } [XmlElement("Color1"), Browsable(false)] public string _Color1 { get { return ColorTranslator.ToHtml(color1); } set { color1 = ColorTranslator.F... 阅读全文

posted @ 2013-07-31 20:29 yao2yao4 阅读(200) 评论(0) 推荐(0)

日期字符串格式
摘要:如下:"yyyy-MM-dd HH:mm:ss.fff" 阅读全文

posted @ 2013-07-30 20:26 yao2yao4 阅读(179) 评论(0) 推荐(0)

sqlite时间比较语法
摘要:如下:字段 > datetime('2000-01-01 01:01:01') AND 字段 < datetime('2001-01-01 01:01:01'); 阅读全文

posted @ 2013-07-30 20:20 yao2yao4 阅读(377) 评论(0) 推荐(0)

Task相关
摘要:1、Task的优势:1)把任务当成变量来用,可以作为参数而传递;2)可以捕获到异步操作中发生的异常。2、开始异步Task.Factory.StartNew(() => Thread.Sleep(1000));此方式生成后即开始,效率更高;而new的方式需要手动Start。3、异步完成时的同步操作task.ContinueWith(t => Thread.Sleep(1000), TaskContinuationOptions.ExecuteSynchronously);返回的Task因为不需要Start,所以可以不接。4、异步取消var cts = new Cancellation 阅读全文

posted @ 2013-07-29 06:03 yao2yao4 阅读(200) 评论(0) 推荐(0)

一维离散信号的滤波
摘要:1、被滤波的元素的大小应该为周期的整数倍例如,以4个点为周期的信号,包含20个元素,共5组。2、进行离散傅里叶变换var a = b.Select(d => new Complex(d, 0)).ToArray();Transform.FourierForward(a);3、去除频域分量for (var i = 5; i d.Real).ToArray();5、滤波前var b = new double[] { 99, 101, 102, 100, 99, 101, 102, 100, 199, 201, 202, 200, ... 阅读全文

posted @ 2013-07-27 15:47 yao2yao4 阅读(984) 评论(0) 推荐(0)

Linq to Xml示例
摘要:Xml文件: Data DataTable ID Int32 Name String Meaning String ... 阅读全文

posted @ 2013-07-23 06:20 yao2yao4 阅读(202) 评论(0) 推荐(0)

非序列化字段与反序列化完成后回调
摘要:示例:public class Class1 : IDeserializationCallback{ public DateTime Birthday { get; set; } [NonSerialized] public int Age; public void OnDeserialization(object sender) { Age = DateTime.Now.Year - Birthday.Year; }} 阅读全文

posted @ 2013-07-21 14:34 yao2yao4 阅读(194) 评论(0) 推荐(0)

不同类型的委托变量的共同类型
摘要:代码示例:var A = new Dictionary();A.Add(0, new Func(() => 123));A.Add(1, new Func(i => i * i));var a = A[0].Method.Invoke(this, null);var b = A[1].Method.Invoke(this, new object[] { 3 }); 阅读全文

posted @ 2013-07-21 11:18 yao2yao4 阅读(182) 评论(0) 推荐(0)

实现IDisposable接口的模式
摘要:代码:public class Class2 : IDisposable{ ~Class2() { Dispose(false); } public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } protected virtual void Dispose(bool disposing) { if (disposing) { //todo:清理托管资源 } ... 阅读全文

posted @ 2013-07-21 09:03 yao2yao4 阅读(171) 评论(0) 推荐(0)

序列化和反序列化
摘要:代码:internal static class Class1{ private static readonly string XML_FOLDER = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "CompanyName", "ProjectName"); private static readonly string XML_FILE = Path.Combine(XML_FOLDER, "config.xml" 阅读全文

posted @ 2013-07-20 21:50 yao2yao4 阅读(210) 评论(0) 推荐(0)

获取任意可序列化对象的Xml字符串,方便在日志中查看任一所感兴趣的对象。
摘要:代码:public static string GetLoggingString(this object obj){ using (var stream = new MemoryStream()) { new XmlSerializer(obj.GetType()).Serialize(stream, obj); stream.Position = 0; var buffer = new byte[stream.Length]; stream.ReadAsync(buffer, 0, buffer.Length); ... 阅读全文

posted @ 2013-07-20 20:33 yao2yao4 阅读(246) 评论(0) 推荐(0)

Net数值计算MathNet.Numerics类库
摘要:一、Net自带的数值计算:System.Numerics1、大整数BitInteger方法:除数和余数、最大公约数2、复数Complex属性:实部、虚部、量值、相位方法:共轭、倒数二、MathNet.Numerics1、组合Combinatorics方法:Combinations计算无重复的组合数目CombinationsWithRepetition计算带重复的组合数目Permutations计算无重复的排列数目Variations计算无重复的变化数目VariationsWithRepetition计算带重复的变化数目2、Complex32和Complex类似3、Evaluate方法:Poly 阅读全文

posted @ 2013-07-19 06:18 yao2yao4 阅读(5990) 评论(0) 推荐(0)

傅里叶变换
摘要:1、引入MathNet.Numerics。2、var b = new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };var a = b.Select(d => new Complex(d, 0)).ToArray();Transform.FourierForward(a);var c = a.Select(d => d.Magnitude).ToArray(); 阅读全文

posted @ 2013-07-18 21:38 yao2yao4 阅读(380) 评论(0) 推荐(0)

异步编程相关的总结
摘要:指标:1、开始异步操作2、进度报告操作3、异步取消操作4、异步完成操作5、并行6、并发1、Thread类2、ThreadPool类3、基于委托的异步编程4、Asynchronous Programming Model(APM):BeginXXX和EndXXX类似的方法5、基于事件异步编程模式(EAP):一个或者多个以Async为后缀的方法和对应的Completed事件,并且这些类都支持异步方法的取消、进度报告和报告结果。6、BackgroundWorker组件7、Task-based Asynchronous Pattern(TAP):类中存在TaskAsync为后缀的方法8、Parallel 阅读全文

posted @ 2013-07-15 07:40 yao2yao4 阅读(193) 评论(0) 推荐(0)

ToolStripButton样式
摘要:public static class Extensions{ public static void SetMouseDownStyle(this ToolStripButton button) { button.ForeColor = Color.Yellow; } public static void SetMouseUpStyle(this ToolStripButton button) { button.ResetForeColor(); }} 阅读全文

posted @ 2013-07-11 08:48 yao2yao4 阅读(1864) 评论(0) 推荐(0)

C#指针与字节数组的操作
摘要:private static byte[] ReadBytesFromPtr(IntPtr intPtr, int bufferLength){ var result = new byte[bufferLength]; var count = bufferLength; for (var i = 0; i < bufferLength; i++) { result[i] = Marshal.ReadByte(intPtr, i); if (result[i] == 0) { count = i; ... 阅读全文

posted @ 2013-07-11 07:55 yao2yao4 阅读(4695) 评论(0) 推荐(0)

bitmap对象被破坏而报错的解决方案
摘要:new Bitmap(image); 阅读全文

posted @ 2013-07-10 20:18 yao2yao4 阅读(157) 评论(0) 推荐(0)

BackgroundWorker
摘要:Constants.Worker = new BackgroundWorker();Constants.Worker.WorkerSupportsCancellation = true;Constants.Worker.DoWork += delegate { while (!Constants.Worker.CancellationPending) { Thread.Sleep(1000); for (int i = 0; i < ProgramStatus.ChannelCount; i++) ... 阅读全文

posted @ 2013-07-10 14:38 yao2yao4 阅读(152) 评论(0) 推荐(0)

Winform跨线程操作界面的策略
摘要:BeginInvoke(new ThreadStart(() => toolStripButton1.Text = "aaa"));1、非跨线程操作和部分跨线程get不会引发异常;2、跨线程set,见上面的例子。3、部分跨线程get,见下面的例子。var a = (int)EndInvoke(BeginInvoke(new Func(() => toolStripComboBox1.SelectedIndex)));public static class UIInvokeHelper{ public static void InvokeUI(this Form 阅读全文

posted @ 2013-07-09 17:29 yao2yao4 阅读(401) 评论(0) 推荐(0)

Winform DataGridView扩展
摘要:public class ObjectPropertyCompare : IComparer{ private readonly PropertyDescriptor property; private readonly ListSortDirection direction; public ObjectPropertyCompare(PropertyDescriptor property, ListSortDirection direction) { this.property = property; this.direction = di... 阅读全文

posted @ 2013-07-09 08:22 yao2yao4 阅读(446) 评论(0) 推荐(0)

GDI+的常用类
摘要:VisualStyleRenderer提供用于绘制和获取有关 System.Windows.Forms.VisualStyles.VisualStyleElement 的信息的方法。VisualStyleInformation提供有关操作系统的当前视觉样式的信息。ControlPaint提供用于绘制常用 Windows 控件及其元素的方法。CreateParams封装创建控件时所需的信息。GraphicsPath表示一系列相互连接的直线和曲线。Region指示由矩形和由路径构成的图形形状的内部。Matrix封装表示几何变换的 3x3 仿射矩阵。 阅读全文

posted @ 2013-07-01 06:25 yao2yao4 阅读(290) 评论(0) 推荐(0)

导航