Я работаю над приложением Windows Forms довольно долгое время, и я действительно нахожу, что делаю больше типов в коде графического интерфейса, чем когда-либо в своем базовом бизнес-коде.Сильно типизированные элементы управления в .NET.
То, что я имею в виду, становится очевидным, если вы наблюдаете за элементом управления ComboBox, который принимает какой-то неопределенный «объект» как элемент. Затем вы уйдете и можете отобразить дисплей DisplayMember и ValueMember и т. Д.
Если я хочу получить это значение позже, мне нужно будет возвращать объект обратно к тому, что было. Как со строками получения значения принимает
string value = (string)combobox1.SelectedItem;
Теперь Поскольку дженерики в рамках в течение достаточно долгого времени, я до сих пор удивляюсь, почему в аду не один контроль из стандартного набора инструментов является универсальным.
Я также обнаружил, что использую свойство .Tag в ListViewItems все время, чтобы сохранить отображаемый объект домена. Но каждый раз, когда мне нужно получить доступ к этому объекту, мне нужен другой тип.
Почему я не могу просто создать ComboBox или ListView с элементами типа ListViewItem
я упускаю что-то здесь, или это просто еще один пример не совсем хорошо продумана управления?