2013-07-23 73 views
0

IsEnabled设置为false时,我必须更改组合框的Text属性,并且IsEnabled在同一控件中为true时,它可以手动选择项目源中的字段,这是否可能?当IsEnabled发生变化时,WPF组合框文本转换器

XAML:

<ComboBox Name="cmbIntervals" 
         Grid.Row="5" 
         Grid.Column="1" 
         Width="150" 
         HorizontalAlignment="Left" 
         VerticalAlignment="Top" 
         IsEnabled="{Binding ElementName=chkBox, 
               Path=IsChecked}" 
         ItemsSource="{Binding Source={x:Static res:Parameters.Instance}, 
               Path=Intervals}" 
         Text="{Binding [Intervals],           Mode=TwoWay, 
             UpdateSourceTrigger=PropertyChanged}" > 
       <ComboBox.Style> 
        <Style TargetType="{x:Type ComboBox}">      
         <Style.Triggers> 
          <Trigger Property="IsEnabled" Value="False"> 
           <Setter Property="Text" Value="1"/>        
          </Trigger> 
         </Style.Triggers> 
        </Style> 
       </ComboBox.Style> 
       </ComboBox> 
+0

你希望将一些文字时,设置为你的组合框禁用? – Vishal

+0

@Farzi完全是 – user1805169

+0

@ user1805169,禁用时更改为固定的东西? – dkozl

回答

0

只是检查在视图模型

if(!IsChecked) 
{ 
TextProperty="1"; //Propery to bind to ComboBox Text 
} 
+0

我添加了这一个来控制,但是当我禁用一个复选框的IsChecked属性绑定到目标组合框将要禁用,但文本值不会改变。我设置Value =“1”其中ComboBox ItemsSource = 1,2,3,4 .... – user1805169

+0

你可以显示一些代码你如何做...以及你想要做什么.. – Vishal

+0

检查我的帖子我更新了与XAML,所以当禁用组合框时,我需要显示文本为1. – user1805169

相关问题