2011-04-11 51 views
1

我已經在我的Xaml上獲得了這個值,我將分配的值傳遞給gridcell顏色。但我也想同時檢查輸入的變量值,所以我可以根據這個改變。如何傳遞2個值,以便我可以在我的iconverter類上有條件。如何將2個值傳遞給我的ValueConverters類?

<DataGridTextColumn Binding="{Binding Allocated}" Header="Allocated" > 
        <DataGridTextColumn.ElementStyle> 
          <Style TargetType="{x:Type TextBlock}"> 
           <Setter Property="Background" Value="{Binding Allocated, Converter={StaticResource converter}}"/> 
          </Style> 
         </DataGridTextColumn.ElementStyle>  </DataGridTextColumn> 

我Converter類:

對象IValueConverter.Convert(對象的值,類型TARGETTYPE,對象參數,System.Globalization.CultureInfo培養){

  string input = value.ToString(); 

     switch (input) 
     { 
      case "99": 
       return Brushes.Green; 
      case "96": 
       return Brushes.Green; 
      case "91": 
       default: 
       return DependencyProperty.UnsetValue; 
     } 

    } 

塊引用

在此先感謝!

回答

2

使用MultiBinding

<DataGridTextColumn.ElementStyle> 
    <Style TargetType="{x:Type TextBlock}"> 
     <Setter Property="Background"> 
      <Setter.Value> 
       <MultiBinding Converter="{StaticResource converter}"> 
        <Binding Path="Allocated" /> 
        <Binding Path="Entered" /> 
       </MultiBinding> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</DataGridTextColumn.ElementStyle> 

和AKE您convet實施IMultiValueConverter

public class MyConverter : IMultiValueConverter 
{ 
    public object Convert(object[] values, Type targetType, 
          object parameter, CultureInfo culture) 
    {... 
+0

感謝ü...它的工作我是新來WPF和wasnt意識到multibinding的。 – CPM 2011-04-11 11:11:45