Я пытаюсь выяснить, как вызвать wcf в асинхронном шаблоне в объекте подсказки xaml. до сих пор я получил следующий код внутри своего шаблона элемента combobox.асинхронно вызывать службу wcf в xaml
В поле со списком есть несколько ItemNames, вытащенных из базы данных, и инструмент появляется, когда мышь наводится на любой из элементов. Я пытаюсь показать дополнительную информацию о зависающем элементе внутри этой всплывающей подсказки. здесь мне нужно вызвать службу wcf асинхронным способом. не могли бы вы поделиться своими идеями со мной по этому вопросу.
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock x:Name="tbTradeName" Text="{Binding}" />
<DataTemplate.Triggers>
<Trigger Property="IsMouseOver" SourceName="tbTradeName" Value="True">
<Setter TargetName="tbTradeName" Property="ToolTip">
<Setter.Value>
<ToolTip>
<ToolTip.Content>
<StackPanel Width="300" Height="150" Background="Orange">
<TextBlock Text="{Binding}" />
<StackPanel Width="300" Height="100">
<!-- I need the content from wcf service here -->
</StackPanel>
</StackPanel>
</ToolTip.Content>
</ToolTip>
</Setter.Value>
</Setter>
</Trigger>
</DataTemplate.Triggers>
</DataTemplate>
</ComboBox.ItemTemplate>
в данный момент им мышления, используя код позади, чтобы отслеживать некоторые события по этому пункту выпадающего списка, а затем каким-то образом загрузить содержимое в панель. Я попробую это, но я не очень уверен в этой идее.
спасибо.
Спасибо, я попробую этот. Я был в состоянии пойти на полпути по этому вопросу, используя подход, основанный на подходе. Я создал поставщика данных объекта в разделе window.resources и использовал его для вызова метода relavent (происходит в синхронном режиме) и получить список объектов данных из службы. в поставщике данных объекта я поместил пустой строковый параметр, а затем привязал этот dataprovider к dataContext панели стека в разделе Шаблон данных, показанном выше. Что мне нужно сделать, так это изменить строковый параметр поставщика данных объекта при наведении на элемент текстового блока в шаблоне данных. – user377414