将父窗口控件绑定到usercontrol的属性

时间:2013-09-02 11:40:32

标签: c# wpf user-controls

我有一个带有tabcontrol的窗口。其中一个选项卡项的内容设置为usercontrol。我的主窗口中有一个按钮,其IsEnabled属性需要设置为usercontrol公开的属性。我希望以干净的方式做到这一点,即使用绑定。

如果那是不可能的,那么我可以通过在usercontrol中设置按钮的IsEnabled属性来做脏话。我尝试了在这个组上发布的一些解决方案来访问主窗口,但我无法得到它。

非常感谢任何一种方法的帮助。

1 个答案:

答案 0 :(得分:1)

这可以通过给usercontrol一个名字来完成,这里有一个带复选框的例子,但它也支持usercontrols。

<Window x:Class="WpfApplication5.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <TabControl>
            <TabItem Header="Tab1">
                <CheckBox Name="checkBox1">Toggle to toggle button isEnabled</CheckBox>
            </TabItem>
        </TabControl>
        <Button Grid.Row="1" IsEnabled="{Binding IsChecked, ElementName=checkBox1}"></Button>        
    </Grid>
</Window>