使ComboBox 2不使用ComboBox 1选择相同的值

时间:2013-09-23 12:34:06

标签: c# date ms-access combobox

我有一个问题。这个问题出现在我的脑海里,但我不知道该怎么做。 我有一个2个ComboBox,每个ComboBox存储一个Date,当用户运行程序并且用户在ComboBox 1中选择Date 29/8/2013时,自动ComboBox 2选择第二天{{1从ComboBox 1中选择的30/8/2013开始,和/或ComboBox 2中的上一个日期将无法点击或阻止(因为作为开始日期的ComboBox 1选择Date Date ,因此29/8/2013的上一个日期无法点击或屏蔽

我该怎么做?

以下是截图:

enter image description here

在上面的屏幕截图中,我从ComboBox 1中选择日期29/8/2013作为开始日期。并且ComboBox 2应该会自动选择9/30/2013的第二天,因此它会选择9/30/2013,而10/01/2013中的上一个日期将被阻止或无法在ComboBox 2中被用户点击为结束日期。

感谢您的回答。 非常感谢你!

以下是代码:

9/30/2013

3 个答案:

答案 0 :(得分:0)

EndDateCollection

的更改事件中填充StartDateCollection

这只会将允许的值填入EndDateCollection组合框

private void StartDateCollection_SelectedIndexChanged(object sender, EventArgs e)
{
    // Clear the items in EndDateCollection

    // Fill EndDateCollection - Start at (StartDateCollection's DateTime).AddDays(1)
}

根据您的编辑,我建议从数据库中获取最大结束日期,然后填写截止日期的日期。同时添加一项检查以确保您不在EndDateCollection

的最长日期

答案 1 :(得分:0)

获得第一个组合框值

示例:2013年3月30日

使用第一个组合框值

添加一天
DateTime dt=Convert.ToDateTime("30/9/2013").AddDay(1);

现在dt值是2013年1月10日

设置combobox selected.item =1/10/2013

它只是一个键,你需要一些日期时间格式。自己动手。

答案 2 :(得分:0)

我不认为这是正确的方法,也许,如果你把逻辑放在Combobox1_SelectedIndexChanged(对象sebder,EventArgs e){}上,它可以在第二个组合框中点击所选的日期字符串只是高于它的日期。

希望它能为您提供一种关注方式

再见