Я пытаюсь связать некоторые произвольные данные со страницей в приложении Xamarin, и в идеале я хотел бы использовать ConditionalWeakTable
для этого. Данные, которые я связываю, это Color
, который, конечно, является структурой, а не объектом. Похоже, что ConditionalWeakTable<TKey, TValue>
имеет ограничение : class
на TValue
... почему это так? Я понимаю, почему TKey
должен быть ссылочным типом; это таблица "слабых ссылок". Но почему ценность должна быть? Есть ли какое-то негативное влияние простого написания класса-обертки для хранения значения Color
, чтобы я мог затем использовать обертку как TValue
?