我正在使用旧版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()
和“外部代码”:
我不知道如何找出是什么禁用了我的按钮。有什么想法如何追查是什么导致这一点?
编辑:
我想询问使用的调试技术,因为后端代码是愚蠢的错综复杂,我不想卸载堆栈溢出的实际工作,因为这将需要在这里发布几十个文件,如果不是几百个文件。
1条答案
按热度按时间0md85ypi1#
也许你的按钮没有被禁用,它不工作只是因为它被放置在一个网格或边界下,虽然它是可见的,通过点击它,你实际上是在点击网格。这发生在我身上!或者也许父容器被禁用了!