Liny_@NotePad

沉迷ACG中

WinForm试用ing = =。。FileOpenDialog & FileSaveDialog

其实挺好用(倘若比起JFileDialog来说)。。

只是在用FileOpenDialog时要注意,关闭对话框时默认会改变工作目录。

今天就遇到了在打开一个文件后工作目录被改动,导致后面用相对路径就找不到文件了。

解决方案很简单,配置FileOpenDialog的RestoreDirectory属性为true,即在对话框关闭时还原工作目录。

下面贴一贴基本的代码。

WinForm试用ing = =。。ProgressBar

.NET 2.0开始不能跨线程访问控件,只能写委托,恨……

那么下面贴一段跨线程调度进度条的代码,无知的我搞了老半天……

WinForm试用ing = =。。ComboBox

嗯 = =。。。用到的几个属性贴一贴:

DisplayMember:显示的属性名称

ValueMember:值的属性名称

Items:对象集合

AutoComplete:自动完成系列的。。略,以后有用到再……

DropDownStyle:控制下拉框中的内容是输入还是下拉

  • Simple:只能输入
  • DropDown:默认值,既能下拉也可以自己输入
  • DropDownList:只能下拉列表

 

真是超无聊的 = =..


要被干掉了~。。。

注册ocx..

第一次装起vss。。拿到源码跑不起来,原来控件啥的没注册。。

老师发了两个ocx来,于是放到system32下来regsvr32,提示找不到所指定的模块。

百度之,原来里面可能缺少dll,用dependency walker打开来看果然有黄色问号图标,再次索要了缺少的dll,一同放入system32下重新regsvr32即可正常注册。

汉化FreeTextBox v3.2

分成几个部分(工具栏控件、弹出页面、图像库)来,囧无比。

alert后CSS失效

原本用Response写弹出,即

Response.Write("<script>alert('修改成功!');</script>“);

发现执行后CSS失效,百度之,原来是.NET会自动将生成的JS放在页面最前面,因此有时会造成CSS失效或页面变形,替换成

Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('XXXX');</script>");

即可解决问题。

ObjectDataSource未能找到带参数的非泛型方法

下午遇到两次这个问题。。

第一次是在做DELETE的时候,因为Delete方法里面的参数与读出来的列名不一致,VS判断其为不同的参数,要求输入,因此提示:ObjectDataSource“objectDataSource”未能找到带参数的非泛型方法“DeleteNews”: ID。

解决方法很囧,就是把Delete方法签名里面的名字改成跟数据列名一样。

第二次是在做SELECT的时候,我需要传入一个网点ID,只显示该网点的信息,但是在ASPX里面编辑时好像只能提供默认值,于是就在Page_Load方法里面填充默认值:objectDataSource.SelectParameters["pointID"].DefaultValue = user.Point;

这个时候就可以随便定义名字了 - -。。。。真囧。这样想来,DELETE时也可以在RowDeleting系列里面传参哩。

同理其他方法的传参。