重剑无锋 大巧不工

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2021年1月4日

摘要: 最主要的坎就是无法安装关联那些Tools,找了几个解决方案就不行, 最后找到的方案简单有效,不需要FQ。 如果您使用的 Go 版本是 1.13 及以上 (推荐),先在终端执行go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.io,di 阅读全文
posted @ 2021-01-04 10:10 bloodish 阅读(127) 评论(0) 推荐(0) 编辑

2011年3月22日

摘要: 跟随VS2010发布的ReportViewer10版本做了很多功能上的改进,有一处改进就是加入了对Html和Style标签的支持, 虽然支持的标签种类有限,但至少可以满足客户的一些个性化的需求了. 目前所支持的标签类型仅限于基本的html和style,清单如下: Html标签: · Hyperlinks: <A href> · Fonts: <FONT> · Header, style and block elements: <H{n}>, <DIV>, <SPAN>,<P>, <DIV 阅读全文
posted @ 2011-03-22 15:26 bloodish 阅读(2153) 评论(1) 推荐(1) 编辑

2011年3月21日

摘要: Silverlight4.0的DataGrid标准控件中只开放了极少的控件事件提供给开发者使用,像DoubleClick,Scroll之类比较常见的事件都没有做支持.对于DoubleClick的处理,可以通过Behavior进行变通,这不是本次要讲解的技术内容. 这次要讲解的是如何注册Scroll事件到DataGrid的垂直或水平滚动条.先通过Refector查看了DataGrid的实现,确实包含VerticalScrollBar和 HorizontalScrollBar这两个属性,可惜声明为internal,只能在程序集内部被调用.因此下意识的是用反射机制拿到Scroll对象,然后注册事件, 阅读全文
posted @ 2011-03-21 16:19 bloodish 阅读(1547) 评论(2) 推荐(3) 编辑

摘要: ?? MSDN注解:如果 ?? 运算符的左操作数非空,该运算符将返回左操作数,否则返回右操作数作为C# 2.0新增的一个运算符,实际使用中并不多,但是如果能够巧妙运用,会有意想不到的效果示例1,初始化对象public class Program{ class MyClass {} static MyClass instance; static void Main() { //如果instance == null,则做初始化 //常规写法: if(instance == null) { instance = new MyClass(); } //??写法: instance = instance 阅读全文
posted @ 2011-03-21 11:22 bloodish 阅读(437) 评论(0) 推荐(0) 编辑

摘要: 先问读者一个问题,如果想控制一个线程(Thread)挂起,继续,结束你会优先选择如何处理? 从面试的经验来看,多数的面试者都会说Thread不是提供了Suspend,Resume,Abort等方法吗,直接调用就好了,简单快捷.但很多情况下简单就是美只是一个谎言而已. Suspend和Resume方法已经被MS标注过时(Obsolete),不建议用户使用,MS同时推荐通过同步控制来管理线程状态. 再问读者一个问题,如果控制一个线程池中的线程的挂起,继续,结束你会优先选择如何处理? 也许有人会说,既然没法用API了,那我定义一些标志量,来做状态控制不就可以了吗? 确实,说起来很简单.那么变量的值需 阅读全文
posted @ 2011-03-21 11:21 bloodish 阅读(6278) 评论(8) 推荐(7) 编辑

摘要: 这篇放到单独讲解数据库的分类比较好,不过作为技巧性的东西,不强求怎么分类,且听我徐徐道来. 备份方法: 先通过注册表得到MySQL程序的安装路径,如果是5.0版本,就是: var registerLocation = @"Software\MySQL AB\MySQL Server 5.0"; var key = Registry.LocalMachine.OpenSubKey(registerLocation); if (key != null) { var location = key.GetValue("Location").ToString(); 阅读全文
posted @ 2011-03-21 11:18 bloodish 阅读(2600) 评论(3) 推荐(0) 编辑

摘要: Component类默认对事件链做了支持,通过操作其Events属性,可大大简化了事件的添加移除的逻辑. Events是一个Key-EventHandler的集合,但并没有按哈希表的方式进行实现,具体的实现方式不在此累述. 任何继承自Component的子类都能从此获益,如果需要新增事件可以按如下方法处理: 先说明一个细节: 如果我们要添加一个EventHandler形式的委托作为事件的类型:即返回void,参数列表为(object,EventArgs), 推荐的做法是添加一个EventArgs的子类,然后使用泛型的EventHandler<T>来作为事件类型,这样可以减少很多的委 阅读全文
posted @ 2011-03-21 10:16 bloodish 阅读(684) 评论(0) 推荐(0) 编辑