2012-12-03 3 views
0

나는 그리드가있다. 하이퍼 링크는 하이퍼 링크가있다. Associateied, UnAssociated, Fulfill.these 하이퍼 링크는 코스 상태를 통해 채워진다. 예를 들어, 코스 상태가 Completed이고 dropped.then 연관 링크가 활성화되어있다. 나는 변환기를 사용했다. this.there에 대한 combobox.if 콤보 상자가 하나의 항목을 누른 다음 하이퍼 링크가 숨길 필요가있다. 나는 모델에서 속성을 만들 필요가 있다고 생각하고 내가 변환기에서 속성에 액세스 할 수 있습니다. 그렇다면 어떻게?WPF 변환기의 속성?

모델 속성과 추가 체크를 여기에서 사용할 수 있습니까 ??

switch (input) 
     { 
      case "Associate": 
       if (Course.status=="Completede" && Course.status=="Dropped") 
        return Visibility.Visible; 
       else 
        return Visibility.Collapsed; 

????

XAML

<DataGridTemplateColumn Header="Required" Width="100"> 
         <DataGridTemplateColumn.CellTemplate> 
          <DataTemplate> 
           <TextBlock Text="{Binding Path=IsRequired, Converter={StaticResource BoolToStringConverter}, ConverterParameter=Associated}"> 
             VerticalAlignment="Center" 
              </TextBlock> 
           </DataTemplate> 
          </DataGridTemplateColumn.CellTemplate> 
       </DataGridTemplateColumn> 
+0

당신이 당신의 콤보와 ItemTemplate을 위해 XAML을 게시 할 경우

? – McGarnagle

+0

1 - XAML 게시. 2 -'IValueConverter'에 매개 변수를 전달해야한다면'Binding' 클래스의'ConverterParameter' 속성이 있습니다 –

+0

@Highcore XAML이 추가되었습니다 ... – KCS

답변

1

아니, 당신은 할 수 없습니다. ConverterParameter을 사용할 수는 있지만 종속성 속성이 아니므로 바인딩 할 수 없습니다. 여러 속성을 사용한다 컨버터에 영향을 미칠 할 MultiBinding

+0

저는 이것이 정확하다고 생각하지 않습니다 - Op는 아이템 컬렉션에 대해 '가시성'을 바인딩 할 것을 요구하고 있습니다. 이 시나리오에서는 Multibinding이 필요 없습니다. – McGarnagle