在WPF控件中查找兄弟

时间:2014-04-13 11:27:12

标签: c# wpf

我有一个xaml结构,如下所示:

<StackPanel>
    <TextBox>
        <TextBox.Style>
            <Style TargetType="{x:Type TextBox}">
                <Setter Property="Height" Value="200" />
            </Style>
        </TextBox.Style>            
    </TextBox>
    <ToolBarPanel Orientation="Horizontal">
        <Button Content="Funky stuff" Command="{Binding Query}" CommandParameter="{what to type in here?}" />
    </ToolBarPanel>
</StackPanel>

如果用户点击Button下的ToolBarPanel,我希望将TextBox的内容作为CommandParameter传递。那么如何找到这个元素?

1 个答案:

答案 0 :(得分:3)

您可以命名文本框,然后将命令参数绑定到文本属性:

<StackPanel>
    <TextBox x:Name="myText">
        <TextBox.Style>
            <Style TargetType="{x:Type TextBox}">
                <Setter Property="Height" Value="200" />
            </Style>
        </TextBox.Style>            
    </TextBox>
    <ToolBarPanel Orientation="Horizontal">
        <Button Content="Funky stuff" 
                Command="{Binding Query}" 
                CommandParameter="{Binding Text, ElementName=myText}" />
    </ToolBarPanel>
</StackPanel>

希望这有帮助。