【问题标题】:Button setting DialogResult automatically?按钮自动设置DialogResult?
【发布时间】:2013-12-29 09:42:59
【问题描述】:

我已经用这个覆盖了这个表单上的默认 ShowDialog() 方法:

    public DialogResult ShowDialog(int itemToEdit) 
    {
        this._itemToEdit = itemToEdit;
        FillForm(Program.AppConfig.Tweets[itemToEdit]);
        return this.ShowDialog();
    }

表单有一个“确定”和一个“取消”按钮,其点击处理程序如下所示:

    private void cancelButton_Click(object sender, EventArgs e)
    {
        this.DialogResult = DialogResult.Cancel;
    }

但是,我有另一个按钮没有设置表单的DialogResult 属性,但是当它被单击时,它以某种方式设置,并且表单隐藏,返回DialogResult.Cancel。我不希望这种情况发生。

编辑:实际上,表单中的每个按钮都会使其返回DialogResult.Cancel,无论它是否具有Click 处理程序。

【问题讨论】:

  • 检查此按钮的属性(在设计模式下)。是否将DialogResult 设置为None
  • 你需要关闭你的问题,它已被回答。

标签: c# winforms


【解决方案1】:

检查该按钮的DialogResult 属性。应该是None。并确保按钮 Click 事件未设置为 cancelButton_Click

【讨论】:

  • 天啊!我复制并粘贴了表单中的按钮,DialogResult 属性必须保持不变。谢谢!
【解决方案2】:

检查表单的CancelButton-属性。对于分配给此属性的按钮,会自动设置 DialogResult(类似于 AcceptButton 属性)。
还要检查另一个按钮的DialogResult 属性。它可能被设置为 DialogResult.Cancel 并关闭表单并返回您观察到的 DialogResult。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-08
    • 2013-04-20
    • 2023-03-12
    • 2010-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多