Category Archives: C#

C#线程开始/暂停/终止

C#线程开始/暂停/终止

写测试工具需要多线程的暂停终止。用C#的 Thread.about()  join() resume() suspend()又提示函数过时了,不建议使用。于是四处找方法,信号量、互斥锁什么的方法也不少,找到下面这个方法,倒是很实用,转载如下:

 

C#关于AutoResetEvent的使用介绍(转)

AutoResetEvent 允许线程通过发信号互相通信。通常,此通信涉及线 [继续阅读....]

WPF数据绑定UI显示同步变更例子

WPF数据绑定UI显示同步变更例子

WPF数据绑定功能很好,很强大。只需要写一点代码就可以做到数据的绑定,数据变更后UI的数据同步显示。UI和主程序多线程间的数据交互问题可以通过这个轻松解决。对“由于其他线程拥有此对象,因此调用线程无法对其进行访问”这样的问题,wpf 的dispatcher 是一个可能的解决方法,数据绑定也是一个方式。

定义类

using System;

using System.ComponentMo [继续阅读....]

A Versatile TreeView for WPF

A Versatile TreeView for WPF

写自动化测试工具的时候要用到tree view,于是上网各种找。C#的Infragistics NetAdvantage,DevExpress之类框架。都太大了,小工具用不着这么大的。用自带的tree view又觉得土了点,WPF又是在边学边做。终于折腾着找个到一个,看着挺好,用着也还合适。

A Versatile TreeView for WPF 来自 codeproject 

他是个 [继续阅读....]

wpf在xaml文件中调用resx资源文件

wpf在xaml文件中调用resx资源文件

找了不少方法,有些都比较麻烦。列举如下:

1、最简单的 :

xmlns:resx="clr-namespace:wpfapplicationname.Properties"

Title="{x:Static resx:Resources.name}"

 

2、

用第三方工具 例如http://www.codeproject.com/KB/WPF/WPF_Resx_ [继续阅读....]

WPF DataGrid 绑定数据

WPF DataGrid 绑定数据

写WPF程序,需要表格。用的是.net3.5,于是找了个WPF Toolkit工具用着。

地址:wpf toolkit http://wpf.codeplex.com/

在绑定数据的时候遇到点麻烦,当然绑定数据的方法有很多中,这里转一个。在最后绑定数据的时候方法不止一种,在下面的代码中我稍作添加。

地址:http://www.cnblogs.com/xh831213/archive/2 [继续阅读....]

WPF中使用USERCONTROL

WPF中使用USERCONTROL

想着怎么在wpf的xaml文件中嵌入另一个xaml文件,找了会发现可以通过usercontrol控件实现。

右键项目添加用户控件,生成一个xaml文件。注意其namespase和类属性:

<UserControl

Name="UserControlToolTip"

x:Class="CustomToolTip.UserControl1"

xmlns="http://sc [继续阅读....]

C#调用C++DLL–委托

C#调用C++DLL--委托

直接上代码,ref类型参数传递也是可以的。和之前一篇用反射调用可以互相参考。C#调用C++DLL--反射

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Runtime.InteropServices;

namespace T [继续阅读....]

C#调用C++写的DLL

C#调用C++写的DLL

方法有不少,这里记录其中的一个方法。编译、调用通过了的。期间遇到的问题是C#调用时传递string类型的参数和返回值会报错。TargetInvocationException异常,值不在范围内,内存不可访问等等。

解决方法是;在c++的DLL中将string类型的参数返回值改为LPTSTR类型。在C#程序中使用StringBuilder类型来传入参数和接受返回值。

下面是代码:

usi [继续阅读....]