C# 两个textBox控件调用同一个monthCalendar输入日期

翻译|其它|编辑:郝浩|2008-05-30 10:11:19.000|阅读 4806 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

C# 多个textBox控件调用同一个monthCalendar输入日期:代码如下

需要添加textBox1+textBox2+monthCalendar1控件

DateTime FirstClick;
int TextBoxNumber;
private void textBox1_Click(object sender, EventArgs e)
{
  this.TextBoxNumber = 1;
  this.monthCalendar1.Visible = true;
}

private void textBox2_Click(object sender, EventArgs e)
{
  this.TextBoxNumber = 2;
  this.monthCalendar1.Visible = true;
}

/// <summary>
/// 日期控件调用函数
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
{
  if (this.TextBoxNumber == 1)
  {
    MonthCalendarDoubleClick(this.textBox1, this.monthCalendar1);
  }
  else
  {
    MonthCalendarDoubleClick(this.textBox2, this.monthCalendar1);
  }
}
/// <summary>
/// 双击日期控件调用函数
/// </summary>
/// <param name="SelectedTextBox"></param>
/// <param name="monthCalendar"></param>
private void MonthCalendarDoubleClick(TextBox SelectedTextBox, MonthCalendar monthCalendar)
{
  DateTime SecondClick = DateTime.Now;//记录下第二次单击时间;
  string ClickSpan = Convert.ToString(SecondClick - FirstClick);//计算两次单击的时间间隔;格式为:00:00:00.1875000
  string Separator = ":.";
  char[] CharClickSpan = Separator.ToCharArray();
  string[] arrayClickSpan = ClickSpan.Split(CharClickSpan);
  if (arrayClickSpan.Length == 4 && arrayClickSpan[0].Equals("00") && arrayClickSpan[1].Equals("00") && arrayClickSpan[2].Equals("00"))
  {
    if (Convert.ToInt32(arrayClickSpan[3].Substring(0, 3)) > SystemInformation.DoubleClickTime)//如果两次单击的时间间隔大于系统双击时间;
    {
      FirstClick = SecondClick;//赋第二次单击时间给第一次;
    }
    else
    {
      //两次单击的时间间隔小于或者等于喜欢双击时间
      SelectedTextBox.Text = monthCalendar.SelectionStart.ToString("yyyy-MM-dd");//把双击选中的文本赋给TextBox;
      this.monthCalendar1.Visible = false;
    }
  }
  else
  {
    FirstClick = SecondClick;
  }
}
标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:博客

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP