gpt4 book ai didi

c# - Action 执行按钮可见 false 不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 12:25:41 24 4
gpt4 key购买 nike

好吧,我有这种情况,在一个程序中,我放置了一个 Button,其代码通过 PerformClick(以编程方式)激活,该按钮在界面中必须是不可见的,所以我从程序开始就设置了值 visible=false 但是事件点击的 Action 没有执行,但如果我设置 visible = true,实际上执行了 Action ,对问题有什么想法吗?

    private void dataGridView1_DoubleClick(object sender, EventArgs e)
{
if(_datosDe == "Insumos")
{
_btnRecargarInsumos.PerformClick();
}
this.Close();
}

_btnRecargarInsumos:是按钮,实际上是在另一个Form中执行的。

    private void btnRecargarInsumos_Click(object sender, EventArgs e)
{
objGeneral.regresaDescripciones(ref dsDescripciones);
cbACDescripcion.DataSource = dsDescripciones.Tables[0];
cbACDescripcion.DisplayMember = "Nombre";
cbACDescripcion.ValueMember = "ID";
cbACDescripcion.SelectedIndex = -1;
cbACDescripcion.Text = "";
}

cbACDescripcion:组合框将使用 DataSet 的值“重新加载”:dsDescripciones。

自程序开始以来属性 visible 为 false,但我也尝试设置 visible=true 并且就在方法 PerformClick() 更改它之前,但它是一样的。

但如果我从一开始就设置 visible=true,它就会以这种方式工作。

最佳答案

如果您单击一个不可见或未启用的按钮,则不会发生任何事情,即使您以编程方式单击它也是如此。这是一个对我有用的解决方法,尽管它有点 hack:

_btnRecargarInsumos.SuspendLayout();
_btnRecargarInsumos.Visible = true;
_btnRecargarInsumos.PerformClick();
_btnRecargarInsumos.Visible = false;
_btnRecargarInsumos.ResumeLayout();

关于c# - Action 执行按钮可见 false 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45153872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com