繁体   English   中英

如何找出禁用 WPF 按钮的原因?

[英]How do I find out what is disabling my WPF button?

我正在使用旧版 WPF 客户端,我有一个项目列表,每个项目都显示在自定义控件中。 该控件包含一个用于从列表中删除该项目的按钮。

当我将一个项目添加到列表中时,按钮上会调用.IsEnabled = false 我找不到任何直接调用它的东西。 我尝试滥用事件处理程序将IsEnabled设置回true ,如下所示:

private void ButtonRemove_IsEnabledChanged(object sender, System.Windows.DependencyPropertyChangedEventArgs e)
{
    if (!(bool)e.NewValue)
    {
        buttonRemove.IsEnabledChanged -= ButtonRemove_IsEnabledChanged;
        buttonRemove.IsEnabled = true;
        buttonRemove.IsEnabledChanged += ButtonRemove_IsEnabledChanged;
    }
}

但这并没有改变任何事情。 调用堆栈仅显示Main()startUp()和“外部代码”: 调用栈

我不知道如何弄清楚是什么禁用了我的按钮。 关于如何追踪导致这种情况的任何想法?

编辑:

我想询问要使用的调试技术,因为后端代码非常复杂,而且我不想卸载 stackoverflow 上的实际工作,因为这需要在此处发布数十个甚至数百个文件。

也许您的按钮没有被禁用并且它不起作用只是因为它被放置在网格或边框下,尽管它是可见的,通过单击它,您实际上是在单击网格。 这发生在我身上!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM