2013-08-23 85 views
0

我想在DataGrid上將我的Itemssource的不同成員顯示爲可以編輯它們的Tiles,Tiles上的編輯選項應該基於數據類型,如果它的枚舉然後是組合框應該可用當前項突出顯示,如果它的字符串比正常編輯應該完成。如何使用基於數據類型的項目創建DataGrid

我用枚舉值瓷磚應該是這個樣子,哪裏都不是當前值進行枚舉(單,無,所有)。可以提供任何人使用MVVM

一些示例代碼風格DataGrid單元格模板this.Iam

My item with enum values should look like this

回答

0

您可以使用組合框做到這一點:

<ComboBox x:Name="FirstVariable" 
         SelectedItem="{Binding ElementName=RootControl, Path=Request.Analysis.Variables[0]}" 
         ItemsSource="{Binding VariableTypeValues, ElementName=RootControl}" 
         /> 

public IEnumerable<VariableType> VariableTypeValues 
    { 
     get 
     { 
      return Enum.GetValues(typeof(VariableType)).Cast<VariableType>(); 
     } 
    } 

以獲取枚舉值。Request.Analysis.Variables [0]是VariableType類型。

0

可以使用DataGridTemplateColumn並將CellEditingTemplateSelector設置爲自定義DataTemplateSelector,該自定義DataTemplateSelector將根據單元格值數據類型提供特定的編輯模板。 Just found one that matches yours request

相關問題