Как употреблять словарьвернулся в WCF? - PullRequest
0 голосов
/ 19 апреля 2011

я написал услугу

[OperationContract]   
Dictionary<string, string> GetItemNames(UInt16 mobileNO);

Я написал простой клиент Windows Mobile 7, который должен использовать данные, возвращаемые службой wcf.

Будучи новичком, я не могу понять, как это сделать. Я пытался использовать простые данные, такие как string, int или bool.

Как использовать сложный тип, такой как словарь или пользовательский объект?

Ответы [ 2 ]

0 голосов
/ 11 января 2012

В ListBox DataTemplate вы можете связать с Key и Value заявлениями с Dictionary

 <StackPanel Orientation="Horizontal" Margin="12,0">
      <TextBlock Text="{Binding Key}" />
      <TextBlock Text=": " />
      <TextBlock Text="{Binding Value}" />
 </StackPanel>
0 голосов
/ 20 апреля 2011

Привязка к объектам ничем не отличается от привязки к примитивным типам.Поскольку словари IEnumerable, вы можете связать его со свойством ItemsSource любого элемента управления Items и установить DisplayMemberPath = ”Value”.

  public MainPage()
    {
        InitializeComponent();

        Dictionary<int, string> dic = new Dictionary<int, string>();

        for (int i = 1; i < 11; i++)
        {
            dic.Add(i, string.Format("Item {0}", i));
        }

        lstBox.ItemsSource = dic;
    }

<ListBox x:Name="lstBox"
                 DisplayMemberPath="Value"
                 Margin="5" />

Для объектов допустима следующая привязка:

<TextBlock Text="{Binding Object.Property}" />

Если вы используете MVVM, возможно, вы захотите выделить свойства объекта вашей модели во ViewModel и привязать его именно к этому.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...