首页 文章

WPF和Winform中的面板

提问于
浏览
0

我在制作Winform应用程序方面有一些经验,但在WPF方面却没有 .

我的问题是关于WPF中的面板 .

比如,在Winform中,我有两个面板:PanelA和PanelB . 我可以将PanelB设置为PanelA,将PanelB设置为visible,将PanelA设置为隐藏 . 通过这样做,PanelA上的所有控件都被禁用,这意味着控件对用户不可见,并且无法通过点击TAB来选择 .

但是,在WPF中,我找不到相同的控件来实现相同的效果 . 我尝试过Rectangle,但如果用户点击了TAB,仍然可以选择Rectangle下面的控件 .

我想要的东西不仅可以直观地阻止控件(按钮等),还可以阻止用户通过点击TAB来选择它们 .

我知道有一种方法可以通过在WPF中将IsEnabled属性设置为false来禁用控件 . 但是有更简单的方法吗?像Winform中的Panel控件一样?

1 回答

  • 0

    我不知道是否比将整个Panel的IsEnabled属性设置为false更容易,但是在WPF中添加到Grid的第二个元素最终会在第一个元素之上 . 因此,如果要隐藏并有效禁用Rectangle,可以将其添加到Grid,然后将另一个元素添加到同一Grid,例如:

    <Grid>
        <Rectangle Width="100" Height="100" Fill="Green" />
        <!-- This child Grid that contains a Button element will effectively hide the above Rectange -->
        <Grid>
            <Button Content="On top..." />
        </Grid>
    </Grid>
    

相关问题