В настоящее время я пытаюсь использовать поставщик данных объекта, чтобы вернуть цвет, который я хотел бы использовать в качестве фона для каждого элемента списка, с цветом, зависящим от индекса элементов списка.Передача listbox item index как параметр to objectdataprovider
Как правило, параметры, переданные объекту, являются исходным цветом и индексом listboxitem, и он возвращает цвет, который легче в зависимости от того, какой именно индекс ... вот код, который у меня есть в настоящее время для поставщика данных объекта :
<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}
Я хочу, чтобы он был связан с индексом listbox, поэтому не уверен, какое свойство его вставить.
Второй вопрос: В элементе списка есть метка, содержимое которой привязано к индексу элемента списка, однако как я могу использовать вышеупомянутый метод источника привязки для привязки содержимого, когда я всегда хочу связать его с индекс?
Спасибо за вашу помощь заранее! =)