07 2013 档案
摘要:怎样获取SqLite请参考初识SqlLite ---.net连接数据库,怎样在SQLite使用Linq请参考在C#中利用Nuget包使用SQLite数据库和Linq to SQLiteusing System;using System.Collections.Generic;using System.Data;using System.Data.SQLite;//using System.Windows.Forms; class Program{ public static void Main() { SQLiteDatabase sqlite = new S...
阅读全文
摘要:要开始使用命令,必须做三件事: 一:定义一个命令 二:定义命令的实现 三:为命令创建一个触发器 WPF中命令系统的基础是一个相对简单的ICommand的接口,代码如下:public interface ICommand { event EventHandler CanExecuteChanged; bool CanExecute(object parameter); void Execute(object parameter); } CanExecute用于确定命令是否处于可执行的状态。典型的,UI控件能使用CanExecute来启用或禁用自己。也就是说,在相关的命令从CanExecute中返
阅读全文
摘要:典型的,把模板关联到一块特定的数据上,不过通常希望动态的确定使用哪个模板---既可以基于一个属性值,也可以是一个全局状态。当真正需要大规模替换模板时,也可以使用DataTemplateSelector。 DataTemplateSelector提供了一个单一的方法----SelectTemplate,以允许通过执行任何逻辑来决定使用哪个模板。...
阅读全文
摘要:在上一篇看到他我一下子就悟了(续)---委托,被人狂喷。说写的太空,没有什么内容之类的。所以准备在这里重写下,不过还是按着以前的方式尽量简单的写。这里我们以打篮球为例。第一步:首先,其他对象订购事件 当发球的球员产生它的发球事件之前,其他球员需要订购这个事件,采用这种方式,只要出现一个发球事件,其他球员就能够知道。第二步:触发事件 当球被发出时,此时发球员对象产生一个新事件。第三步:球产生一个事件 创建一个新事件,这个事件还有一些参数,如球的距离和轨迹。这些参数作为EventArgs对象的一个实例关联到事件,然后事件发出,所有监听对象都能得到这个事件。一旦事件产生,所有订购者都会得到通知,并做
阅读全文
摘要:项目需要一个硬件检测功能,需要用到界面刷新,刚开始想用个定时器,对检测过的硬设定时添加后刷新界面。但是很遗憾,定时器并不能进行刷新。后台检测List数据里面已经添加了很多了很多数据了,就是不能显示到界面然后百度一下“WPF刷新界面”找了好几篇文章,大致都是如下代码: public class UIHelper : Application { //刷新界面 private static DispatcherOperationCallback exitFrameCallback = new DispatcherOperationCallb...
阅读全文
摘要:我们将研究如何创建一个作为Windows服务的应用程序。内容包含什么是Windows服务,如何创建、安装和调试它们。会用到System.ServiceProcess.ServiceBase命名空间的类。什么是Windows服务? Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合。它没有用户界面,并且也不会产生任何可视输出。任何用户消息都会被写进Windows事件日志。计算机启动时,服务会自动开始运行。它们不要用户一定登录才运行,它们能在包括这个系统内的任何用户环境下运行。通过服务控制管理器,Windows服务是可控的,可以终止、暂停及当需要时启动。 Wi...
阅读全文
摘要:前面一篇文章《WCF 学习总结1 -- 简单实例》一股脑儿展示了几种WCF部署方式,其中配置文件(App.config/Web.config)都是IDE自动生成,省去了我们不少功夫。现在回过头来看看IDE提供的Wcf Service Library项目模板中的默认服务端配置文件——App.config里面究竟有什么秘密。服务端的配置文件主要是对services、bindings、behaviors的配置。在默认的App.config中,使用的是WCF Framework定义好的wsHttpBinding默认配置,所以看不到binding配置节。配置节展开如下图:BTW: "元数据端点
阅读全文
摘要:从VS2005推出WCF以来,WCF逐步取代了Remoting, WebService成为.NET上分布式程序的主要技术。WCF统一的模型整合了以往的 WebService、Remoting、MSMQ 等技术,让分布式开发变得更加简单,方便,快捷。(上图选自《Programming WCF Services》)WCF基本概念(ABC):1.地址(Address):决定服务的地址;2.绑定(Binding):决定服务的细节;3.契约(Contract):服务的定义(抽象),决定消息结构的定义。WCF的发布:WCF服务的发布可以有几种形式: IIS, Windows Service, Self-H
阅读全文
摘要:在重新引用服务的时候,或者是是更新引用服务的时候,点“高级”按钮,在服务引用设置对话框中,将“重新使用引用的程序集中的类型”这个勾取消,这样就能安全的重新引用服务。
阅读全文
摘要:Visual Studio 命令提示和 SDK 命令提示会自动设置环境变量,使您能够轻松使用 .NET Framework 工具。在 .NET Framework4 版 和更高版本中,应使用 Visual Studio 命令提示,它可从“Visual Studio 工具”中获取。对于 .NET Framework 的较早版本,可以使用 Visual Studio 命令提示符或 SDK 命令提示。SDK 命令提示包含在.NET Framework version 2.0 Software Development Kit (SDK)(.NET Framework 版本 2.0 软件开发工具包 (S
阅读全文
摘要:using System;using System.Collections.Generic;using System.Linq;using System.Text;using WcfServiceLibrary1;using System.ServiceModel.Configuration;using System.Configuration;using System.Reflection;using System.ServiceModel;namespace ConsoleApplication1{ class Program { static void Main...
阅读全文
摘要:public class Service2 : IService2 { public User DoWork() { Console.WriteLine(ClientIpAndPort()); return new User { Name = "sdf", Age = 12 }; } public string ClientIpAndPort() { OperationContext context = OperationContext.Curre...
阅读全文
摘要:Windows 8全新的Metro操作体验,对于没有平板只能用快捷键来提高效率了。全面的Windows 8快捷键,请下载微软官方的Windows 8快捷键表格,快捷键全记完整个人都斯巴达了..其实常用的也就那么几个,例如:Win+X,Win+I等..Win键这回在Windows 8是发挥到极致了。现把我搜集到的快捷键与大家分享下Windows 8 Consumer Preview常用快捷键Windows 键 可在开始屏幕主菜单及最后一个应用程序间循环切换Windows 键 + C 打开“超级按钮”Windows 键 + I 打开当前程序的“设置”菜单Windows 键 + F 搜索文件或文件夹
阅读全文
摘要:操作 在用svn管理版本时,有时希望在提交到服务器时,能过滤掉指定后缀名的所有文件,或指定名称的文件夹、文件名。 常见的文件夹名称和文件名如下:binobj debug temppe *.suo *.pdsync *.projdata *.vbproj.user *.csproj.user *.vbproj.webinfo *.csproj.webinfo *.scc *.vspscc *.vssscc _ReSharper.* *.pdb *.vshost.exe *.manifest 打开SVN客户端-----常规设置------全局忽略样式,添加bin obj debug temp...
阅读全文
摘要:这次首先对以前的结构进行了调整:第一步:把MyButton按钮的属性独立成一个类,放在一个单独的MyButton.cs中,把图片的初始化也放到里面。调整代码如下:public class MyButton : Button { //图片的名称,用于判断两个按钮是否为同一个 public int Flag { get; set; } //Button所在行 public int RowNum { get; set; } //所在列 public int ColNum { get; set; } public MyButton(int flag...
阅读全文
摘要:在不传递参数情况下,一般大家都使用ThreadStart代理来连接执行函数,ThreadStart委托接收的函数不能有参数,也不能有返回值。如果希望传递参数给执行函数,则可以使用带参数的ParameterizedThreadStart委托, public delegate void ParameterizedThreadStart(Object obj)可以将要传送给线程函数的信息封装为一个对象,然后调用Thread类的以下构造函数 public Thread (ParameterizedThreadStartstart)启动线程时,向其传送一个参数信息 Thread t...
阅读全文
摘要:C#遍历enum类型对于enum类型:使用foreach遍历enum类型的元素并填充combox foreach ( HatchStyle hs1 in Enum.GetValues(typeof(HatchStyle))) { comboBox1.Items.Add(hs1.ToString()); }获取enum项个数(使用反射) private static int NumberOfEnumValues() { return typeof(TStageEnum).GetFields(B...
阅读全文
摘要:一、如何从 Datagrid 中获得单元格的内容 DataGrid属于一种ItemsControl,因此,它有Items属性并且用ItemContainer封装它的items.但是,WPF中的DataGrid不同于Windows Forms中的DataGridView。在DataGrid的Items集合中,DataGridRow是一个Item,但是,它里面的单元格却是被封装在DataGridCellsPresenter的容器中;因此,我们不能使用像DataGridView.Rows.Cells这样的语句去获得单元格的内容。但是,在WPF中我们可以通过可视树(VisualTree)去进入到控..
阅读全文
摘要:一、WPF 中获取和设置鼠标位置 方法一:WPF方法 Point p = Mouse.GetPosition(e.Source as FrameworkElement); Point p = (e.Source as FrameworkElement).PointToScreen(pp); 方法二: API方法 /// /// 设置鼠标的坐标 /// /// 横坐标 /// 纵坐标 [DllImport("User32")] public e...
阅读全文
摘要:eclipse 4.3汉化eclipse 4.3 ---kepler已经于2013年6月26日发布主要版本,详见:eclipse in wikipedia1、上eclipse官网:http://www.eclipse.org/downloads/ 选择你要下载的版本2、下载完成后打开eclipse在 菜单栏的 help项目下有 install new software,单击会出现一个新的对话框 3、点击ADD会出现: 其中的name可以随意填写,比如:language location里的地址为:http://download.eclipse.org/technology/babel...
阅读全文
摘要:上次刚接触SqlLite,不知道怎么创建数据库,现在做下总结: 界面和MYSQL一样,都是CMD界面,但不是在SQLite.exe中创建数据库:首先还是说一下cmd下sqlite的使用网上已经很多了、不做过多的赘述。大致说一下相应的命令就行了、作为学习sqlite的一个记录1:选择下载对应自己系统的sqlite.3exe文件2:解压后使用cmd命令进入sqlite3.exe文件所在的路径执行命令就可以操作做相应的操作。在进入数据库之后如果需要退出的话windows下摁ctrl+c就能退出例如:创建数据库命令:sqlite3.exe 【数据库名字.后缀名】 这里比较牛一点的感觉就是创建的...
阅读全文
摘要:1.画个笑脸给大家娱乐一下: 效果如下:2.Xaml日期格式化3.让按钮有按钮的感觉,汗,不是废话吗,就是让按钮有按下去的感觉 ...
阅读全文
摘要:连连看算法第一步:我们考虑在同行或者同列的情况: 同行或者同列又分三种情况: 第一:边线,RowNum或者ColNum等于0或者9 第二:两个相邻 第三:同行不相邻,这种事有条件的,所在行(或列)的上下(或左右)紧邻行必须在两个按钮之间已全部消除?好,有出问题了,怎么根据已知的行和列,获取Button是否被消除呢?我们可以定义一个Button的二维数组。并在初始化的时候给它赋值 MyButton[,] maps=new MyButton[10,10]; maps[i, j] = btn;好,怎么获取Button是否隐藏已经解决。同行步相邻的又分是从上侧、右侧和中间连。 ...
阅读全文
摘要:第一步: 问题,怎样动态的建立一个10*10的grid(布局) for (int i = 0; i =1, /// MainWindow.xaml 的交互逻辑 /// public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); Add(); } public void Add() { Random random = n...
阅读全文
摘要:先建立一个button 方法一:绕左上角旋转 public void Transform1() { RotateTransform rtf = new RotateTransform(); trans.RenderTransform = rtf; DoubleAnimation dbAscending = new DoubleAnimation(0, 360, new Duration (TimeSpan.FromSeconds(1))); dbAscend...
阅读全文
摘要:今天在公交车上,突然想属性和字段到底有什么区别?很多字段属性都存在 get{}和set{} 和普通的变量没什么区别(可读可写)我就感觉属性就是给字段一个多的选择方式,有的字段是不允许更改的.. 刚写程序时总觉得一个字段就能满足要求,何必要使用定义起来麻烦的属性要get、set的去定义,代码量还大,真不知道他们的区别和优点例:public class myclass {public static string Aprivate sting _B=""; public string Getval { get { retrun _B ;} set { _B = value; }
阅读全文
摘要:此为转帖,编辑手下留情,我认为很不错,值得分享!关键字:程序员私活经验外包作者: row@csdn标题:个人外包项目全记 - Best Partner地址:http://www.cnblogs.com/txw1958/archive/2012/11/06/programmer-personal-work.html正文:(一)项目确立一年前,CSDN的外包频道,一家贸易公司寻求开发业务系统。我注意到这家公司和我正好在一个城市,索性就跟了一帖,写了点简要的个人开发情况,当然最重要的是附上了自己的手机号码(当时CSDN外包频道还不限制这个信息的)。第二天就接到那家公司总经理的电话,这让我多少有点意外
阅读全文
摘要:概述jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是—写更少的代码,做更多的事情。它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及的,它兼容 CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。 jQuery 是一个快速的,简洁的 javaScript 库,使用户能更方便地处理 HTML documents、events、实现动画效果,并且方便地为网站提供 AJAX 交互。 jQuery 还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有
阅读全文
摘要:1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容publicclassReadFromFile{/***以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。*/publicstaticvoidreadFileByBytes(StringfileName){Filefile=newFile(fileName);InputStreamin=null;try{System.out.println("以字节为单位读取文件内容,一次读一个字节:");//一次读一个字节in=newFileInputStream(file);intte
阅读全文
摘要:因为想要修改wpf的启动方式,所以研究了下Application类,现把一些有用的属性与大家分享下:属性: Current 获取当前AppDomain的Application对象 MainWindow 获取或设置应用程序的主窗体。(下面详细介绍) Resources 获取或设置应用程序范围资源的集合,例如样式和画笔。 ShutdownMode 获取或设置会导致Shutdown方法调用的情况。 StartupUri 获取或设置自动显示的UI,当应用程序启动时。 Windows 获取在应用程序中...
阅读全文
摘要:版权所有:不知道http://topic.csdn.net/u/20120315/12/A5BC5453-4333-4182-A4A9-08DC01D04F75.html(从一个论坛看到的) 以下文章都是经典,看不看随你的便,我只希望知识掌握在更多中国人的手里! 中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神,但是他们被一些错误的认识和观点左右,缺乏对系统,对程序的整体理解能力,这些人,一个网上的朋友说得很好,他们实际fans,压根没有资格称为程序员,但是据我所知,不少小网络公司的Cfans,拿着吓人的工资..
阅读全文
摘要:从程序集获得类型 先说点题外话,现在技术真的发展太快了。我这边还很多东西半生不熟呢,那边又出现了好多有趣的新东西让你眼红不已。学还是不学这还真是个问题。Node.js 、bootstrap,我最近刚发现的新技术,其实他们已经存在很久了,只是没有接触过而已。昨天晚上看Node.js一下子看到两点多,感觉真是太有意思了^,有兴趣的可以去看看,大家多交流交流. 好了不废话了,在前面的示例中,几乎全部的MyClass信息都是通过反射得到的,但是有一个例外:MyClass类型本身。虽然前面的示例可以动态确定MyClass的信息,但它们仍基于以下事实:事先知道类型名MyClass,并且在typeof语..
阅读全文
摘要:获取Type对象的构造函数: 前一篇因为篇幅问题因为篇幅太短被移除首页,反射这一块还有一篇“怎样在程序集中使用反射”,其他没有什么可以写的了,前两篇主要是铺垫,在实际应用中,主要是最后两篇。其实写完反射,我也考虑重新把委托重新写下,现在想想确实太过单一和简单了。我会把实际开发中委托的例子多写几个, 以便以理解。如果这几篇C#的基础对您有所帮助的话,请点击推荐。谢谢您的支持…… 好了,不废话了,在前面例子中,由于MyClass类型的对象是显示创建的,因此使用反射技术来调用MyClass上的方法没有任何优势--以普通的方式调用对象上的方法会简单的多。但是,如果对象是在运行时动态创建的,反射的...
阅读全文
摘要:Oracle字符串函数平常我们用Oracle主要有两种字符串类型1.char始终为固定的长度,如果设置了长度小于char列的值,则Oracle会自动用空格填充的。当比较char时,Oracle用空格将其填充为等长,再进行比较。2.VarChar2数据类型为可变长度,虽然与VarChar数据类型是同义的,但在今后的Oracle版本中也许会有变化,所以应该避免使用VarChar,优先使用VarChar2。固定长度的字符串字段使用Char,而其他所有的字符串字段都应使用VarChar2.下面列出部分Oracle针对字符串操作的一些函数,以下函数可以使用在字符串上,也可以使用在列名上:1.LOWER(
阅读全文
摘要:使用反射调用方法:一旦知道一个类型所支持的方法,就可以对方法进行调用。调用时,需使用包含在MethodInfo中的Invoke()方法。调用形式:object Invoke(object ob, object[] args)这里ob是一个对象引用,将调用它所指向的对象上的方法。对于静态方法,ob必须为null。所有需要传递给方法的参数都必须在args数组中指定。如果方法不需要参数,则args必须为null。另外,数组args的元素数量参数必须等于参数的数量。Invoke()方法返回被调用方法的返回值。要调用某个方法,只需在一个MethodInfo实例上调用Invoke(),该实例通过调用Get
阅读全文
摘要:微软打破了Visual Studio两年升级一次的传统,Visual Studio 2012发布还不足一年,微软就计划发布了Visual Studio 2013了。在今天的TechEd大会上,微软宣布,6月底的BUILD全球开发者大会上,大家不仅能见到Windows 8.1的预览版,还能下载到Visual Studio 2013和Team Foundation Server 2013的预览版。Visual Studio 2013的新功能太多了,我们挑几个说一说。VS2013中,开发人员可以具体查看到哪条代码是由哪个人编写的,负载测试也能转移到Windows Azure云平台进行。Visual
阅读全文
摘要:substr 方法返回一个从指定位置开始的指定长度的子字符串。stringvar.substr(start [, length ])参数stringvar必选项。要提取子字符串的字符串文字或 String 对象。start必选项。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。length可选项。在返回的子字符串中应包括的字符个数。说明如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。示例下面的示例演示了substr 方法的用法。function SubstrDemo(){ var s, ss; ...
阅读全文
摘要:反射(reflection)是一种允许用户获得类型信息的C#特性。术语“反射”源自于它的工作方式:Type对象映射它所代表的底层对象。对Type对象进行查询可以获得(反射)与类型相关的信息。反射是一种功能强大的机制,它允许学习和使用只在运行时才能知道的类型功能。 这些是官方定义,其实说白了,反射就是能知道我们未知类型的类型信息这么一个东西.没什么神秘可讲! 反射的核心是System.Type。System.Type包含了很多属性和方法,使用这些属性和方法可以在运行时得到类型信息。一旦得到类型信息,就可以调用其构造函数、方法和属性。因此,反射允许使用编译时不可用的代码。因为反射涉及...
阅读全文
摘要:可能是篇幅太短了,又被打入冷宫了.先重发一篇加上可选参数.本来不想加这个呢,因为可选参数可能大家用的会多点.其实这两个在VB中早就有了,C#中,在.net4发布之前是不能使用的.看到这个比较兴奋,我想大家也有好多人不知道,所以就强烈的想与大家分享一下.一、命名参数 命名参数会潜在的改变编写代码的方式.这个新功能能使代码更容易阅读和理解.例如,看一下System.IO名称空间中的File.Copy()方法,它一般构建为File.Copy(@"C:\mytestFile.txt",@"C:\myOtherFile.txt",true); 在这行代码中,这个简
阅读全文
摘要:命名参数会潜在的改变编写代码的方式.这个新功能能使代码更容易阅读和理解.例如,看一下System.IO名称空间中的File.Copy()方法,它一般构建为File.Copy(@"C:\mytestFile.txt",@"C:\myOtherFile.txt",true); 在这行代码中,这个简单的方法使用3个参数,但实际传递给Copy()方法的是什么内容?除非知道这个方法的前前后后,否则 仅看一眼该方法,很难判断出该方法会执行何种操作.而通过命名参数,就可以在提供参数值之前使用代码中的参数名,如下所示:File.Copy(sourceFileName:
阅读全文
摘要:Sqlite 是一款轻量级的关系型数据库,以小巧和嵌入式闻名。以前只是听说,现在终于忍不住要尝试下.本文的初衷是为.net平台的使用者提供帮助。Sqlite有专门为VS2010开发的程序包,大家可以到System.Data.SQLite Download Page下去下载,注意是:This is the only setup package that is capable of installing the design-time components for Visual Studio 2010.安装后,在VS2010中新建数数库链接就会看到有System.Data.SQLite的链接,..
阅读全文
摘要:今天在把以前写的代码生成工具从原来的.NET3.5升级到.NET4.0,同时准备进一步完善,将程序集都更新后,一运行程序在一处方法调用时报出了一个异常:混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集其调用的方法是从sqlite数据库中获取原来已经使用过的数据库连接,当时也没注意,就是准备设断点然后单步调试,结果竟然是断点无法进入方法体内,后来仔细看了一下方法体的时候发现了一个问题,就是现有的System.Data.Sqlite这个数据访问provider是针对.NET2.0环境开发(最新的版本是1.0.66.0,2
阅读全文
摘要:先说些题外话,只所以写这些东西。是看了CSDN上的曹版主的一篇:手把手教编程,不知道有没有人愿意参与。说实话,我工作四年,总感觉晕晕乎乎的,好多技术都懂,但是没有一项是精通的。看了这篇帖子,说实在话我可想去,去聆听大神的教导。主要是想提高自己,由于没有时间,又因为身在北京。所以就没有报名(呵呵,报名也可能没有机会去)。所以自己就去图书馆去搞他提出的这些概念。其实我更希望在北京的大神们也能组织类似的活动。我想响应一定也很多,其实我想如果能组织一次这样的活动,大神们也会得到提高的。这些都是我在图书馆看书的所得,分享给大家,同时也请管理员同志手下留情,不要每一篇都给打入冷宫,我已经很用心去做了。另.
阅读全文
摘要:最近碰到个问题,在ExtJS中应该如何设置tabpanel的tab的高度?因为默认情况下,tab的高度太矮了,以至于tab的标题底部字都被截掉。设置了个tabpanel.minHeight = ‘500’,但是这个仅仅是设置tabpanel的高度,而不是设置tabpanel的每个tab的标题的高度。随后,又改成了minHeight:‘50’,好像效果还是不理想。 如果只是为了每个tab的高度的话,自然tab高度依赖于tabpaenl的高度,tabpanel又依赖于外层组件的高度,如果仅仅把tabpanelrenderTo body的话,那tabpanel在渲染的时候就自动高度了,所以想要...
阅读全文
摘要:#关闭命令显示@echo off#提示信息echo Now,listing the controller,please not shutdown the DOS File!#切换到当前路径,.bat文件和.rb文件放在一起就可以了set pa=%cd%#执行ruby脚本ruby test.rbpause
阅读全文
浙公网安备 33010602011771号