木子屋 Dnawo's BLOG

2008-09 归档

共 48 篇

WinForms通用对话框使用示例

/// <summary> /// ColorDialog /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { ColorDialog colorDialog1 = new ColorDialog(); if (colorDialog1.ShowDialog() == DialogResult.OK) { label1.…

Windows Media Player控件常用属性

axWindowsMediaPlayer1.URL = ""; //播放文件地址 axWindowsMediaPlayer1.settings.autoStart = true;//自动播放 axWindowsMediaPlayer1.settings.playCount = 1; //播放次数 axWindowsMediaPlayer1.settings.volume = 100; //音量 axWindowsMediaPlayer1.settings.mute = false; //静音 axWindowsMediaPlayer1.Ctlcontrols.play(); //开始播放 axWindowsMediaPlayer1.Ctlcontrols.stop(); //停止播放…

WinForms最小化到托盘(C#)

实现功能:当点击最小化按钮后窗体最小化到系统托盘,点击下托盘图标窗体恢复正常状态。 1.从工具栏拉一个NotifyIcon控件到Form1; 2.给notifyIcon1的Icon属性指定一个图标,并将Visible设置为False; 3.Form1.cs代码如下: 后记:如果需要给托盘加一个右键菜单,只需在窗体中添加一个ContextMenuStrip菜单(contextMenuStrip1),并将notifyIcon1的ContextMenuStrip属性值设置为contextMenuStrip1即可!同时修改下托盘点击事件的处理程序:

"回发或回调参数无效"解决方法

服务器端使用 DropDownList1.SelectedValue 获取选择项的值: 当选择项是"张三"或"李四"时程序运行正常,当选择项是使用客户端js增加的"王五"时,程序运行出错: 回发或回调参数无效。在配置中使用 或在页面中使用 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。 将EnableEventValidation的值设置为false后,程序不再出错,但在服务器端也无法获取"王五"这一项的值!改用 Request 才能正常获取值:

动态给服务器端控件增添属性

例如DropDownList服务器端控件,我们希望他在选择项改变时在客户端能调用一些事件处理程序,但是DropDownList默认是没有onchange属性的,此时我们可以调用他的Attributes.Add方法来动态添加属性: Default.aspx: Default.aspx.cs:

一个简单的AjaxPro使用案例

准备工作: 1.登录 http://www.ajaxpro.info/ 下载AjaxPro; 2.在项目中添加对AjaxPro.2.dll的引用; 3.在Web.config中增加location节点: 使用案例: Default.aspx: Default.aspx.cs: 说明: 1.必须在Page_Load注册AjaxPro; 2.AjaxPro的方法必须在前边加,且访问级别一定要是public; 3.客户端使用"类名.方法名(参数列表,回调函数)"的形式直接调用服务器端函数;

Windows服务中Timer组件Tick无法触发解决方法

具体原因,微软自称是Framework的bug,但是无论是windows窗体中timer还是组件中的timer都是继承自System.Windows.Form.Timer,并不是我们需要的System.Timers,下边例子中我们来手工创建继承自System.Timers 的timer: 这样就可以触发Elapsed事件了,注册服务一切正常。 附:Visual Studio 中3种计时器说明 System.Windows.Forms.Timer:基于windows 的计时器,运行于Windows 窗体程序中。 System.Timers.Timer:基于服务的计时器,运行于服务器环境中。 System.Threading.Timer:基于线程的计时器,使用回调方法而不是使用事件,并由线程池线程提供支持。

使用C#创建一个简单的Windows服务

服务功能:在C:\ServiceLog.log中记录服务的开始和停止时间,在指定间隔时间重复执行一些操作,并在C:\ServiceLog.log中记录时间。 步骤1:打开Microsoft Visual Studio 2008,新建一个Windows服务; 步骤2:打开Service1.cs代码页,输入下边代码; Service1.cs: 步骤3:在Service1.cs设计视图上点击右键,选择"添加安装程序",会添加一个新类 ProjectInstaller 和两个安装组件 ServiceProcessInstaller 和 ServiceInstaller; 步骤4:打开ProjectInstaller.cs设计视图,设置serviceInstaller1组件的ServiceName属性值(服务名称)和StartType属性值(服务启动类型,通常设置为Automatic),设置serviceProcessInstaller1组件的Account属性值(运行服务的帐户类型,通常设置为LocalSystem),三个属性设置完后本服务创建完成;…

C#中文转拼音

using System; using System.Text; /// <summary> /// 中文转拼音 /// </summary> /// <remarks>使用:ChineseSpell.MakeSpellCode("木子屋", SpellOptions.EnableUnicodeLetter)</remarks> public class ChineseSpell { private static readonly string _charIndex = new string { "1", "2", "3", "4", "5", "6", "7", …