一Excel表格,内容为       0列    1列    2列    3列    4列
   0行 空     空     0      1      2
   1行 11     345    空     1      1
   2行 12     019    1      空     1
   3行 13     323    2      空     空“空”表示空数据
其中“1列”因为有开头为“0”的“019”,所以设置这一列的格式为自定义“000”。
现在读取并显示到DataGrid中,却显示为       0列    1列    2列    3列    4列
   0行 (null) (null) F1     F2     F3
   1行 11     345    (null) 1      1
   2行 12     019    1      1      (null)
   3行 13     323    2      (null) (null)怎么样才能让“0行”显示正确,且(null)不显示?

解决方案 »

  1.   

    你的数据是selcet出来的吗,是的话可以加判断是空的话就设个默认值
    要是从别的地方取来的就要对数据进行处理了
      

  2.   

    private System.Data.DataSet DataSet_1;string str_Connect="Provider = Microsoft.Jet.OLEDB.4.0;"+
        "Data Source=d:\\Lottery.xls;"+
        "Extended Properties=Excel 8.0";
    string str_Command="Select * FROM [2006$]";
    OleDbConnection OleDbConnection_1=new OleDbConnection(str_Connect);
    OleDbConnection_1.Open();
    OleDbDataAdapter OleDbDataAdapter_1= new OleDbDataAdapterstr_Command,OleDbConnection_1);
    DataSet_1 = new DataSet();
    OleDbDataAdapter_1.Fill(DataSet_1 ,"[2006$]");
    OleDbConnection_1.Close ( ) ;DataSet_1.Tables[0].Rows[1].ItemArray[1]="111"; //请问这句怎么不起作用?
    DataGrid_ViewData.DataMember="[2006$]";
    DataGrid_ViewData.DataSource=DataSet_1;我奇怪的是为什么0行的数据会从“空,空,0,1,2”变成“(null),(null),F1,F2,F3”?