X

来源:互联网 发布:如何在淘宝卖蜂蜜 编辑:程序博客网 时间:2024/04/28 14:08

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++)