2012-12-03 42 views
0

我有一個網格。在網格中有超鏈接。像Associatied,UnAssociated,Fulfill.these超鏈接通過課程狀態填充,例如,如果課程狀態是Completed and dropped.then associate link is enabled.I used converter對於這個。有combobox.if組合框有一個項目,那麼我需要隱藏超鏈接assiciate.I認爲我需要在模型中創建一個屬性,我可以訪問converter.pro中的屬性,那麼如何?在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

你能後的XAML爲您的組合框和它的ItemTemplate中? – McGarnagle

+0

1 - 發佈您的XAML。 2 - 如果你需要傳遞參數給一個'IValueConverter',你有'Binding'類的'ConverterParameter'屬性 –

+0

@Highcore XAML加入... – KCS

回答

1

不,你不能。您可以使用ConverterParameter,但它不是一個依賴屬性,因此它不能被綁定。

如果你想幾個屬性來影響你應該使用轉換器MultiBinding

+0

我不認爲這是正確的 - Op正在要求將「Visibility」與物品的集合綁定。在這種情況下不需要多重綁定。 – McGarnagle