Jose
Jose

Reputation: 11091

Implicit operator?

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?

Upvotes: 5

Views: 318

Answers (1)

Mehrdad Afshari
Mehrdad Afshari

Reputation: 422252

public static implicit operator T(SelectItem<T> obj) {
    return obj.Item;
}

Upvotes: 12

Related Questions