public bool Convert(string s, out object value)
{
Color v = Color.Transparent;
value = v;
byte f;
string[] splits = s.Split(ZXPCExt.VALUE_DELIMITERS, StringSplitOptions.RemoveEmptyEntries);
int vi = 0;
foreach(var sv in splits) {
if(vi == 4) break;
if(string.IsNullOrWhiteSpace(sv))
continue;
if(byte.TryParse(sv, out f)) {
switch(vi) {
case 0: v.R = f; break;
case 1: v.G = f; break;
case 2: v.B = f; break;
case 3: v.A = f; break;
}
vi++;
}
}
if(vi < 4) return false;
value = v;
return true;
}