1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
public class EntireParamsToStringMultiConverter : IMultiValueConverter
{
private IValueID found = null;
// 1er element de value = ma collection
// 2eme element de value = mon id
public object Convert(object[] value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
ObservableCollection<IValueID> coll;
UInt16 ref_id;
string s_ret = null;
found = null;
if ((value[0] is ObservableCollection<IValueID>) &&
(UInt16.TryParse(value[1].ToString(), out ref_id)))
{
coll = value[0] as ObservableCollection<IValueID>;
found = coll.FirstOrDefault(e => e.Id == ref_id);
if (found != null)
{
s_ret = found.Value.ToString();
}
}
return s_ret;
}
public object[] ConvertBack(object value, Type[] TargetType, object parameter, System.Globalization.CultureInfo culture)
{
if (found != null)
{
found.Value = value.ToString();
}
return null;
}
} |
Partager