我有一個問題,以自定義的方式綁定我的datagrid的一列。 所以,我有鑑於這樣的代碼:Datagrid綁定到集合,問題與一列轉換
<DataGridTemplateColumn Header="State">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Label Background="" Content="{Binding Path=., Converter={StaticResource measureConv}}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我的轉換器:
public class MeasureToStateConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
Measure m;
try
{
m = (Measure)value;
if (m.Value > 100)
{
return "Alarm";
}
}
catch (Exception ex)
{
Debugger.Log(0, "Convertery", "Bład Convertera MeasureToState" + ex.Message);
}
return "Normal";
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
內容和背景屬性是定製。我使用轉換器來檢查我的集合對象是否滿足某些條件結束返回字符串是或否,但如果我想在一個顏色背景中有字符串字段是,如果它是否我是另一種顏色。
我該怎麼做才容易? 我覺得寫第二個轉換器是一點愚蠢的。
我只是實現並採用DataTemplateSelector一個解決方案,它工作得很好。 – Zamboni 2011-03-12 23:21:52