DataBinding: DataGridView og null-værdier
Jeg har bundet en BindingList<Customer> til et DataGridView.Hver Customer kan have OrderInfo - men den kan også være null - og brugeren skal have mulighed for at 'null'e den.
I mit CellParsing-eventet konverterer jeg manuelt brugerens string-input til et OrderInfo object. Hvis brugeren har indtastet en ugyldig værdi - skal jeg sætte null på objectet.
Det får jeg ikke lov til...
Jeg har prøvet følgende:
Sat kolonnens InheritedStyle.DataSourceNull = null;
I CellParsing sætter jeg:
e.Value = string.empty; (har prøvet e.Value = null;)
e.ParsingApplied har jeg sat til true (har prøvet e.ParsingApplied = false med begge muligheder i e.Value).
Jeg får en DataError med at der sker en ugyldig ændring fra String -> OrderInfo.
Når jeg følger debugging, når jeg ikke ned i propertien på Customer-objectet - den fejler umiddelbart efter CellParsing.
Hvad overser jeg?
public class Customer
{
public OrderInfo OrderInfo
{
get{return _OrderInfo;}
set{_OrderInfo = value;}
}
}
public Class OrderInfo
{
private Decimal _MaxTotal;
public Decimal MaxTotal
{
get{return _MaxTotal;}
set{_MaxTotal = value;}
}
}