1. excel报表里数字的显示为:2E15,(意思是该数字以2开头,一共有16位,位数由15+1确定,
1是E前有几位数就是几位)本来是200810161031123456,产生这个问题的原因如下:
首先看数据库里的字段是什么类型的,如果是数字型的,则位数达到16位时就会显示为乱码,
解决方法可以将该字段的类型改为字符型,确认字段为字符型后问题依然存在
则检查excel报表里显示数据的单元格设置的格式是否为“文本”.
2.行转列问题
oracle:可以使用decode 或者case when
参考http://oracle.chinaitlab.com/optimize/534546.html
sqlserver2000:case when
sqlserver2005:一个简便的方法
3.反射技术的应用
4.grid表格里的数据滚屏显示,每屏显示10条数据
解决办法:将从数据库取出的数据读到一个DataSet 然后再把数据读到DataView里,
然后利用DataView的RowFilter过滤器过滤数据,然后再把数据写到DataTable
5.声音播放问题
参考msdn:
http://msdn.microsoft.com/zh-cn/library/system.media.soundplayer.playsync(VS.80).aspx
.net 2.0 SoundPlayer类的
Play方法:使用新线程播放 .wav 文件,如果尚未加载 .wav 文件,则先加载该文件。
PlaySync 方法:使用用户界面 (UI) 线程播放 .wav 文件,如果尚未加载 .wav 文件,则先加载该文件。
System.Media.SoundPlayer s = new SoundPlayer();
s.SoundLocation = 声音文件路径;
s.LoadAsync(); //加载声音文件
for (int i = 0; i < Times; i++)
{
//判断声音文件播放的次数,大于设置的重复播放次数则退出
if (mTimes<5)
{
s.PlaySync();
mPlayTimesY++;
}
else
{
break;
}
}//for (int i = 0; i < Times; i++)