0

我有一个 GridViewColumn 与 Combobox BAsed on ComboBox selected 我想动态放置 UI 元素。下面给出的是代码。OperatorList 具有三个值“Between”、“After”、“Before”。基于此选择,必须加载模板.If "Between" Multiple TextBox else Single textbox.This part works fine.But to get the content of this and store in Model Class for each row是我遇到问题的地方。

<StackPanel>
     <ComboBox Grid.Column="0" ItemsSource="{Binding Path=OperatorList}"  IsEditable="True"
                                          IsSynchronizedWithCurrentItem="True" 
                                          SelectedValue="{Binding ReferenceOperatorSelected}"  />
                                                    <UserControl x:Name="MyControl">

                                                    </UserControl>

                                                </StackPanel>
                                                <DataTemplate.Triggers>
                                                    <DataTrigger Binding="{Binding ReferenceOperatorSelected}" Value="Between">
                                                        <Setter TargetName="MyControl" Property="ContentTemplate" Value="{StaticResource MultipleTextBoxTemplate}"></Setter>
                                                    </DataTrigger>
                                                    <DataTrigger Binding="{Binding ReferenceOperatorSelected}" Value="After">
                                                        <Setter TargetName="MyControl" Property="ContentTemplate" Value="{StaticResource SingleTextBoxTemplate}"></Setter>
                                                    </DataTrigger>
                                                    <DataTrigger Binding="{Binding ReferenceOperatorSelected}" Value="Before">
                                                        <Setter TargetName="MyControl" Property="ContentTemplate" Value="{StaticResource SingleTextBoxTemplate}"></Setter>
                                                    </DataTrigger>
                                                </DataTemplate.Triggers>




    <DataTemplate x:Key="MultipleTextBoxTemplate">

                                    <StackPanel>

                                        <TextBox Text="{Binding Path=BetweenValue1,Mode=TwoWay,NotifyOnSourceUpdated=True}" MinWidth="40"></TextBox>
                                        <TextBox Text="{Binding Path=BetweenValue2,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" MinWidth="40"></TextBox>
                                    </StackPanel>
                                </DataTemplate>

在我的模型类中,我有两个属性 BetweenValue1 和 BetweenVALue2 ...当我在文本框中输入值时,这些属性不会更新。

4

1 回答 1

0

您尚未为 UserControl 设置内容。试着做

<UserControl x:Name="MyControl" Content="{Binding}"/>
于 2013-09-19T06:59:21.497 回答