textBox1.DataBindings.Add   (   "Text"   ,   ds   ,   "日期"   )   
请问绑定后的日期为什么还有时间,我本来数据里只是日期,为什么经过绑定后输出textbox1.text不只是日期还有时间,
如2009/12/16 0:00:00

解决方案 »

  1.   

    DateTime.Parse("1999-09-09").ToShortDateString();
    可能是自动转化为长日期格式了,用ToShortDateString()转化为短日期格式。
      

  2.   

            private void Form9_Load(object sender, EventArgs e)
            {
                string strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=Addresslist.mdb";
                OleDbConnection myconn = new OleDbConnection(strconn);
                try
                {
                    myconn.Open();
                    string strcomm = "select * from record";
                    OleDbDataAdapter mypter = new OleDbDataAdapter(strcomm, myconn);
                    DataSet myset = new DataSet();
                    mypter.Fill(myset, "record");                Binding mybd1 = new Binding("text", myset, "record.xm");
                    textBox1.DataBindings.Add(mybd1);                Binding mybd2 = new Binding("text", myset, "record.xb");
                    textBox9.DataBindings.Add(mybd2);                Binding mybd3 = new Binding("text", myset, "record.csrq");
                    textBox10.DataBindings.Add(mybd3);                Binding mybd4 = new Binding("text", myset, "record.jtzz");
                    textBox2.DataBindings.Add(mybd4);
                                   Binding mybd5 = new Binding("text", myset, "record.gzdw");
                    textBox3.DataBindings.Add(mybd5);                Binding mybd6 = new Binding("text", myset, "record.tel");
                    textBox4.DataBindings.Add(mybd6);                Binding mybd7 = new Binding("text", myset, "record.mobil");
                    textBox5.DataBindings.Add(mybd7);                Binding mybd8 = new Binding("text", myset, "record.qq");
                    textBox6.DataBindings.Add(mybd8);                Binding mybd9 = new Binding("text", myset, "record.email");
                    textBox7.DataBindings.Add(mybd9);                Binding mybd10 = new Binding("text", myset, "record.gx");
                    textBox8.DataBindings.Add(mybd10);
                    Binding mybd11 = new Binding("text", myset, "record.pic");
                    textBox11.DataBindings.Add(mybd11);
                                                  
                    bmb = this.BindingContext[myset, "record"];
                    myconn.Close();
                }
                catch (OleDbException ex)
                {
                    MessageBox.Show(ex.Message,"提示信息");
                }        }
     在上面代码中数据库是用access编的,record.csrq是日期格式,record.pic虽然是文本格式,但是存的是文件名,所以也有问题,用MessageBox.Show(textBox10.text.trim())测试的时候,出现的不只是日期,而且有时间,但是存在里面的只有日期。若用MessageBox.Show(textBox11.text.trim())则没有内容。
      

  3.   

    在MSDN里关于数据绑定的内容里有专门的格式化数据的内容!
      

  4.   

    SQl数据库里的记录本来就是这样的  建议你用应SUBSTRING() 这个函数
      

  5.   

    用Convert函数初始化啊,要不就更改数据库里面的时间类型为data
      

  6.   

    因为你没有初始化输出日期格式,
    databindings.add 中有初始化输出格式的方法哦
    TextBox1.DataBindings.Add("Text",ds , "日期",true,DataSourceUpdateMode.OnValidation, DateTime.Now, "yyyy-MM-dd");