1.系统运行时加载一个窗体,但代码部分会出现两个完全一样的。
原因:
这次窗体直接用的原来的,当时用的时候没想到,只是想着界面就不用画了,没想到会是这样的效果
解决办法:
如果想要用原来的界面,那就复制窗体的控件吧,不要直接添加整个现有的项目了
吸取教训:
哪怕想偷懒,也要想周到,可以先用一条线去测试一下,如果这样没问题的话再继续偷懒
2.将截断字符串或二进制数据,语句已终止
原因:使用的数据库表中的某字段长度太短了
3.未将对象引用设置到对象的实例
<1>.从datagridView控件 将数据导出到excel提示"未将对象引用设置到对象的实例。"
原因:
DataGridView控件加载数据时会自动添加一空白行,当表中存在其他数据时运行程序时就不会报错,但没有其他数据的时候在运行程序时就会弹出错误,因为此时单元格的value是空的,当进行MyExcel.Cells(i+2,j+1)=DataGridView1(j,i).Value.ToString时就会出现这样的错误
解决办法:
(1)
a.去掉ToString
b.将DataGridView控件的AllowUserToAddRows属性设置为false
(2)
先对value进行判断,如果不是空的话,在进行ToString操作就可以啦
<2>.删除datagridView控件中选中行时提示"未将对象引用设置到对象的实例"
原因:datagridView中没有数据
解决办法:
与<1>的解决方法一样
4.向数据库中插入数据的时候 提示成功了 但是当我查看表的时候却发现表中没有数据
原因: 我的马虎导致的,由于现在操作的数据量不是很大,不知道大家在查看数据库中某张表的时候是不是也向我一样喜欢右击表选择"编辑前200行"啊?哈哈 说到这相信你已经明白啦,是这次我的数据不像之前这么少了,超过了200行,也就不显示了,所以说不是数据没有写入进去.做一个提示,大家不要犯相似的错误了
5.设置父子窗体时运行程序子窗体被父窗体的控件挡住了
解决办法:
(1)
a.将主窗体的IsMdiConTain 属性设置为true 这时它就是父窗体了
b.重新创建一个窗体,将父窗体中控件复制到此窗体中,然后再设置此窗体的一些属性,使其附着在父窗体上,这样的话就看不出是两个窗体啦
c.设置属性
Borderstyle = none '设置窗体的边框为无边框
ControBox = false '设置窗体中无系统按钮
WindowState=Maximized '设置窗体为最大化
d.在你显示窗体之前也就是from.show之前需要使
子窗体.MdiParent = 父窗体
例如:
frmQryStuBalance.MdiParent= Me
frmQryStuBalance.Show()
(2)
a.将主窗体的IsMdiConTain 属性设置为true 这时它就是父窗体了
b.将主窗体中的控件剪切出来,这时要在窗体中使用Panel控件,然后再将你刚刚剪切的控件放回原处
c.在你显示窗体之前也就是from.show之前需要使
- 子窗体.TopLevel = False
- 父窗体.Panel.Controls.Add(子窗体)
- 子窗体.BringToFront()
例如:
frmQryStuBalance.TopLevel= False
Me.Panel1.Controls.Add(frmQryStuBalance)
frmQryStuBalance.BringToFront()