gpt4 book ai didi

wpf - 在 WPF 窗口中禁用除一个子控件之外的所有控件

转载 作者:行者123 更新时间:2023-12-03 21:18:46 35 4
gpt4 key购买 nike

我的窗口上有一堆控件。其中之一是在后台线程上执行繁琐任务的刷新按钮。

当用户单击刷新按钮时,我将光标置于等待(沙漏)状态并禁用整个窗口 -- Me.IsEnabled = False .

我想通过让用户单击取消按钮来支持取消刷新操作,但是当整个窗口被禁用时,我无法做到这一点。

除了一个一个地禁用每个控件(取消按钮除外),然后在用户单击取消时一个个地重新启用它们之外,还有什么方法可以做到这一点?

最佳答案

您可以将所有控件放在一个面板(Grid、StackPanel 等)中,而将取消按钮留在另一个面板中。然后设置另一个面板的 IsEnabled 属性。

在实践中,这可能会引入多个额外的面板。

例如,如果您有一个 StackPanel 按钮,您可以添加一个额外的 StackPanel:

<StackPanel Orientation="Horizontal">
<StackPanel x:Name="controlContainer" Orientation="Horizontal">
<!-- Other Buttons Here -->
</StackPanel>
<Button Content="Cancel" />
</StackPanel>

然后,您将执行以下操作以禁用除取消按钮之外的所有内容:
controlContainer.IsEnabled = false;

关于wpf - 在 WPF 窗口中禁用除一个子控件之外的所有控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/273809/

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