Question

I need some help. I am creating a SelectItem class like this:

public class SelectItem<T> where T : class
{
    public bool IsChecked { get; set; }
    public T Item { get; set; }
}

I would like the following code to be valid

SelectItem<String> obj = new SelectItem<String> { Item = "Value" };

obj.IsChecked = true;

String objValue = obj;

Instead of having to do this:

String objValue = obj.Item;

How can I accomplish this?

Was it helpful?

Solution

public static implicit operator T(SelectItem<T> obj) {
    return obj.Item;
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top