4 using System.Globalization;
6 namespace SiliconStudio.Presentation.ValueConverters
10 public override object Convert(
object[] values, Type targetType,
object parameter, CultureInfo culture)
12 switch (values.Length)
14 case 2:
return new Tuple<object, object>(values[0], values[1]);
15 case 3:
return new Tuple<object, object, object>(values[0], values[1], values[2]);
16 case 4:
return new Tuple<object, object, object, object>(values[0], values[1], values[2], values[3]);
17 case 5:
return new Tuple<object, object, object, object, object>(values[0], values[1], values[2], values[3], values[4]);
18 case 6:
return new Tuple<object, object, object, object, object, object>(values[0], values[1], values[2], values[3], values[4], values[5]);
19 case 7:
return new Tuple<object, object, object, object, object, object, object>(values[0], values[1], values[2], values[3], values[4], values[5], values[6]);
20 case 8:
return new Tuple<object, object, object, object, object, object, object, object>(values[0], values[1], values[2], values[3], values[4], values[5], values[6], values[7]);
21 default:
throw new ArgumentException(
"This converter supports only between two and eight elements");
override object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)