从ControlTemplate / DataTemplate获取数据

时间:2015-02-20 14:45:09

标签: c# wpf wpf-controls

我正在寻找建议,我的问题是从TextBox获取数据(用户书面文本),该数据由RadioButton中的ControlTemplate分配。 RadioButton是在ScrollViewer中以编程方式创建的。

XAML:

<UserControl.Resources>
    <ControlTemplate x:Name="rbTemplate" TargetType="RadioButton">
        <RadioButton>   
            <TextBox></TextBox>
        </RadioButton>
    </ControlTemplate> 
</UserControl.Resources>

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

正如@XAMlMAX正确提到的,在WPF中我们使用数据绑定来处理从UI获取数据。您可以在MSDN上的Data Binding Overview页面中找到完整的故事。但是,简而言之,您需要添加一个属性来接收数据,然后将数据绑定到TextBox.Text属性:

<UserControl.Resources>
    <ControlTemplate x:Name="rbTemplate" TargetType="RadioButton">
        <RadioButton>   
            <TextBox Text="{Binding YourStringProperty}" />
        </RadioButton>
    </ControlTemplate> 
</UserControl.Resources>

然后在您的代码隐藏或视图模型中,您可以从YourStringProperty属性中获取输入的文本。