如何在数据库中不退出搜索时将datetimepicker设置为默认值? [英] how to make datetimepicker to default value while search is not exits in the database?

查看:91
本文介绍了如何在数据库中不退出搜索时将datetimepicker设置为默认值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨我想知道我应该使用哪些属性/方法来浏览我们可以使用的文本框.ToString();



  private   void  Search_Click( object  sender,EventArgs e)
{
#region搜索
if (txtrctno.Text ==
{
MessageBox.Show( 请求输入Rctid For Search !!!!);
}

其他
{
cmd = new SqlCommand( RoyalSearch,con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add( new SqlParameter( @rctno int .Parse(txtrctno.Text)));
dr = cmd.ExecuteReader();
if (dr.Read())
{
// string theDate = dateTimePicker1.Value.ToShortDateString();
// dateTimePicker1.Text = dr [latedate]。ToString();
// dateTimePicker1_ValueChanged();
txtrcdfrm.Text = dr [ RcvdFrm ]的ToString();
txtgrno.Text = dr [ GRNO]。ToString();
txtclass.Text = dr [ Class]。ToString();
txtdigits.Text = dr [ RupeesDigits]。ToString();
txtrupees.Text = dr [ Rupees]。ToString();
txttowords.Text = dr [ Towords]。ToString();
}
else
{

txtrctno.Clear();
// dateTimePicker1.Update();
// this.dateTimePicker1.Format = DateTimePickerFormat.Custom;
// this.dateTimePicker1.CustomFormat =; //一个带有一个空格的字符串
txtrcdfrm.Clear();
txtgrno.Clear();
txtclass.Clear();
txtdigits.Clear();
txtrupees.Clear();
txttowords.Clear();
MessageBox.Show( 抱歉记录不会退出..);

}
dr.Close();
}







如果没有找到记录,那么所有字段都会被清除,我想要datetimepicker应该显示今天的日期时间??

现在我的查询被简单清除我希望每当记录不退出它应该显示默认意味着今天的日期时间否则如果你有其他想法请分享.... div class =h2_lin>解决方案

首先,你没有为DateTimePicker设置值:

 dateTimePicker1.Text = dr [   latedate]。ToString(); 



要设置值,请使用 DateTimePicker .Value属性 [ ^ ]:

 dateTimePicker1.Value = dr [  latedate]。价值; 



如果博士[latedate]。价值相等 DbNull.Value [ ^ ],你需要使用简单技巧:

 dateTimePicker1.Value = dr [  latedate ]。价值?  new  DateTime( 2000  1 ,< span class =code-digit> 1 )



以上代码应返回 dr [latedate]。值或手动定义的日期。



为什么你看到: 26/56/2013 而不是 26/03/2013 ? YAIR-I已在评论中回复了您,但请参阅 DateTimePicker.CustomFormat [ ^ ]属性。

要正确设置自定义格式,请使用:

  public   void  SetMyCustomFormat()
{
// 设置格式类型和CustomFormat字符串。
dateTimePicker1.Format = DateTimePickerFormat.Custom ;
dateTimePicker1.CustomFormat = dd / MM / yyyy;
}


hi i want to know what property/methods should i use for reading through dr like for text-boxes we can use .ToString();

private void Search_Click(object sender, EventArgs e)
       {
         #region Search
           if (txtrctno.Text == "")
           {
               MessageBox.Show("Pleas enter Rctid For Searching!!!!");
           }

           else
           {
               cmd = new SqlCommand("RoyalSearch", con);
               cmd.CommandType = CommandType.StoredProcedure;
               cmd.Parameters.Add(new SqlParameter("@rctno", int.Parse(txtrctno.Text)));
               dr = cmd.ExecuteReader();
               if (dr.Read())
               {
                  // string theDate = dateTimePicker1.Value.ToShortDateString();
                  // dateTimePicker1.Text = dr["latedate"].ToString();
                   //dateTimePicker1_ValueChanged();
                   txtrcdfrm.Text = dr["RcvdFrm"].ToString();
                   txtgrno.Text = dr["GRNO"].ToString();
                   txtclass.Text = dr["Class"].ToString();
                   txtdigits.Text = dr["RupeesDigits"].ToString();
                   txtrupees.Text = dr["Rupees"].ToString();
                   txttowords.Text = dr["Towords"].ToString();
               }
               else
               {

                   txtrctno.Clear();
                   //dateTimePicker1.Update();
                   //this.dateTimePicker1.Format = DateTimePickerFormat.Custom;
                   //this.dateTimePicker1.CustomFormat = " "; //a string with one whitespace
                   txtrcdfrm.Clear();
                   txtgrno.Clear();
                   txtclass.Clear();
                   txtdigits.Clear();
                   txtrupees.Clear();
                   txttowords.Clear();
                   MessageBox.Show("Sorry record does not exits..");

               }
               dr.Close();
           }




and if records does not found then all fields gets cleared and i want datetimepicker should show todays datetime??
Now my query is cleared in short i want whenever records does not exits it should show default means todays datetime otherwise if you have some other idea please share....

解决方案

Firsy of all, you do not set value for DateTimePicker:

dateTimePicker1.Text = dr["latedate"].ToString();


To set value, use DateTimePicker.Value property[^]:

dateTimePicker1.Value = dr["latedate"].Value;


If dr["latedate"].Value is equal DbNull.Value[^], you need to use simple trick:

dateTimePicker1.Value = dr["latedate"].Value ?? new DateTime(2000,1,1)


Above code should return dr["latedate"].Value or manually defined date.

Why you see: 26/56/2013 instead of 26/03/2013? YAIR-I has answered to you in comment, but see the description of DateTimePicker.CustomFormat[^] property.
To properly set custom format, use:

public void SetMyCustomFormat()
{
   // Set the Format type and the CustomFormat string.
   dateTimePicker1.Format = DateTimePickerFormat.Custom;
   dateTimePicker1.CustomFormat = "dd/MM/yyyy";
}


这篇关于如何在数据库中不退出搜索时将datetimepicker设置为默认值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆