【问题标题】:Get the month click of DateTimePicker in VB.net在VB.net中获取DateTimePicker的月份点击
【发布时间】:2013-02-22 12:22:27
【问题描述】:

如何查看 DateTimePicker 的月份箭头点击事件。当我尝试更改 datetimepicker 的月份时,它会给出下个月的第一个日期,所以我必须阻止该月的点击。

请看图片:

非常感谢。

【问题讨论】:

    标签: vb.net datetimepicker


    【解决方案1】:

    混合使用 CloseUp 和 DropDown 事件和绑定数据可能是解决方案

    Imports System.Windows.Forms
    
    Namespace WindowsFormsApplication1
        Public Partial Class Form1
            Inherits Form
            Private isDropedDown As Boolean
            Private m_dataSale As DateTime = DateTime.Now
            Public Property DataSale() As DateTime
                Get
                    Return m_dataSale
                End Get
                Set
                    If isDropedDown Then
                        If m_dataSale.[Date].AddMonths(1).[Date] = value.[Date] OrElse m_dataSale.[Date].AddMonths(-1).[Date] = value.[Date] OrElse New DateTime(m_dataSale.Year, m_dataSale.Month, 1).AddMonths(1).[Date] = value.[Date] OrElse New DateTime(m_dataSale.Year, m_dataSale.Month, 1).AddMonths(-1).[Date] = value.[Date] Then
                            MessageBox.Show("Month is changing")
                        End If
                    End If
    
                    m_dataSale = value
                End Set
            End Property
    
            Public Sub New()
                InitializeComponent()
                Dim binding = dateTimePicker1.DataBindings.Add("Value", Me, "DataSale")
                binding.DataSourceUpdateMode = DataSourceUpdateMode.OnPropertyChanged
            End Sub
            Private Sub dateTimePicker1_CloseUp(sender As Object, e As EventArgs)
                isDropedDown = False
            End Sub
    
            Private Sub dateTimePicker1_DropDown(sender As Object, e As EventArgs)
                isDropedDown = True
            End Sub
        End Class
    End Namespace
    

    【讨论】:

    • 嗨,现在我正在处理 Datetimepicker 的 ValueChanged 事件,但它在两个时间都在调用(即当我们点击特定日期和点击月份箭头时)所以我的问题是怎么做我认出了日期时间选择器上的月份箭头,因为在这两个时间都调用了值更改。
    • @Rahul Shirphule 我已经改变了答案朋友
    猜你喜欢
    • 1970-01-01
    • 2019-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-18
    • 1970-01-01
    相关资源
    最近更新 更多