如何从Windows窗体中的组合框下拉更改焦点

时间:2012-10-23 11:52:30

标签: c# winforms

我创建了一个Windows窗体,我在其中下了一个下拉组合框和某些字段。从下拉列表中选择任何值时,字段的值会相应更改。我面临的问题是我无法点击Windows窗体中的任何其他位置。随着ComboBox下拉,焦点仍然存在。我使用了其他按钮,如'PRINT',它提供了打印胜利形式中显示的信息的功能。但由于焦点被粘在组合框上,我无法点击它。对于组合框,我使用了以下代码:

private void btnPrint_Click(object sender, EventArgs e)
    {
        try
        {
            ExistingAccountScreen existingAcctScreen = new ExistingAccountScreen();
            FillExistingAppForPrinting(existingAcctScreen);
            using (PrintViewer pv=new PrintViewer(existingAcctScreen))
            {
                pv.ShowDialog();
            }
        }
        catch (Exception ex)
        {
            AOTHelper.WriteLog(ex);
        }
    } 

下拉点击事件如下所示,在选择除defult选择值以外的值时会产生问题

private void cmbAccountNumber_SelectedIndexChanged(object sender, EventArgs e)
    {
        ExistingAccountInfo acctInfo = cmbAccountNumber.SelectedItem as ExistingAccountInfo;
        if (acctInfo == null)
            return;
        existingAccountInfoBindingSource.DataSource = ExistingAccountInfo.Get(acctInfo.AccountNumber);

        accountStatusBindingSource.DataSource = ExistingAccountInfo.GetExistingStatusCodes(acctInfo.AccountNumber);
    }

1 个答案:

答案 0 :(得分:1)

只需将下拉组合框的原因验证属性设置为False。