Wpf文本框文本绑定到viewmodel属性和资源属性

时间:2016-04-26 02:36:57

标签: wpf data-binding

我有一个wpf文本框,它使用资源设置样式,文本框的文本值来自使用转换器的样式资源。

这是样式资源文件中代码的一部分。它是文本框样式的控件模板的一部分。

     <Style x:Key="DateTimePickerStyle" TargetType="{x:Type TextBox}">

//Other code omitted for clarity
    <ToggleButton 
        Template="{StaticResource Button}"
        MaxHeight="21"
        Width="130" 
        IsEnabled="True"
        Name="ImageButton"
        Grid.Column="0" 
        IsChecked="False"
        >
        <ToggleButton.Content>
            <MultiBinding Converter="{StaticResource DateTimeConverter}" >
                <Binding 
                    ElementName="CalendarDisplay" Path="SelectedDate" Mode="TwoWay"></Binding>
                <Binding 
                    ElementName="ComboBox" Path="SelectedValue" Mode="TwoWay"></Binding>
            </MultiBinding>
        </ToggleButton.Content>
    </ToggleButton>
    </Style>

我将代码中的样式资源连接起来,如下所示:

 TextBox tb = new TextBox();
                Style styleCalendar = (Style) tb.TryFindResource("DateTimePickerStyle");

                if (styleCalendar != null)
                {
                    DatePickerEndDate.Style = styleCalendar;//DateTimePickerEndDate is a text box on xaml
                }

我在另一个窗口上使用此样式来设置文本框的样式,但希望它绑定到viewmodel中的属性。

<TextBox 
    Name="ClickNowEndDate" 
    Grid.Column="1" 
    Grid.Row="2" 
    Width="200"
    Text="{Binding ClickNowEndDateTime}"
    />

我的问题是上述文本框以何种方式显示样式资源中转换器的值,同时,我可以使用“ClickNowEndDateTime”属性在视图模型中检索其值。

0 个答案:

没有答案