using System.Collections.Generic; namespace TriInspector { public class TriDropdownList : List> { public void Add(string text, T value) { Add(new TriDropdownItem {Text = text, Value = value,}); } } public interface ITriDropdownItem { string Text { get; } object Value { get; } } public struct TriDropdownItem : ITriDropdownItem { public string Text { get; set; } public object Value { get; set; } } public struct TriDropdownItem : ITriDropdownItem { public string Text; public T Value; string ITriDropdownItem.Text => Text; object ITriDropdownItem.Value => Value; } }