В настоящее время я пытаюсь использовать поставщика данных объекта, чтобы вернуть цвет, который я хотел бы использовать в качестве фона для каждого элемента списка, с цветом, зависящим от этого индекса элементов списка.
В основном параметры, передаваемые объекту, - это исходный цвет и индекс элемента списка, и он будет возвращать более светлый цвет в зависимости от того, какой это индекс ... вот код, который у меня есть в настоящее время для поставщика данных объекта:
<ObjectDataProvider ObjectType="{x:Type local:cUserProfiles}"
MethodName="GetRankColour" x:Key="RankColour">
<ObjectDataProvider.MethodParameters>
<Color> {ORIGINAL_COLOUR}<Color/>
<system:Int16>{LISTBOXITEM INDEX}</system:Int16>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
Я знаю, что вы не можете выполнить прямую привязку, потому что это не объект зависимости и не соответствует правилам привязки, и что вы должны установить его напрямую ... однако я не уверен, где в моем элементе списка xaml Я должен вернуться.
Кроме того, после долгого поиска ответа на этот вопрос я нашел только примеры, в которых люди меняют параметры только на основе таких вещей, как то, что кто-то вводит в текстовое поле с помощью этого метода: -
{Binding Source={StaticResource RankColour},
Path=MethodParameters[1],
BindsDirectlyToSource=True,
UpdateSourceTrigger=PropertyChanged}
Я хочу, чтобы он был привязан к индексу списка, поэтому не уверен, в какое свойство его поместить.
Второй вопрос: у элемента списка есть метка, содержимое которой привязано к индексу элемента списка, однако как я могу использовать вышеуказанный метод источника привязки для привязки контента, если я всегда хочу привязать его к индексу?
Заранее спасибо за помощь! знак равно