0

我正在尝试创建一个从 identifyTask 填充的 ComboBox(该任务来自 ArcGIS Silverlight API)。我遇到了两个事件的问题。一个创建一个列表,而另一个将该列表推送到 ComboBox。我似乎无法正确创建列表。现在,ComboBox 只是空白。

这是一个 XAML 片段:

<ComboBox x:Name="IdentifyComboBox" SelectionChanged="cb_SelectionChanged"
                     Margin="5,1,5,5" Grid.Row="0">
                </ComboBox>

这是一个 C# 片段:

public void ShowFeatures(List<IdentifyResult> results)
        {
            _dataItems = new List<DataItem>();

            if (results != null && results.Count > 0)
            {
                var fieldsToDisplay = new List<string>() { "OBJECTID", "Projekt", "Laufzeit", "Ansprechpa" };
                foreach (IdentifyResult result in results)
                {
                    Graphic feature = result.Feature;
                    string title = result.Value.ToString() + " (" + result.LayerName + ")";
                    var attributesToDisplay = new Dictionary<string, object>();
                    foreach (var item in feature.Attributes)
                        if (fieldsToDisplay.Contains(item.Key))
                            attributesToDisplay[item.Key] = item.Value;

                    _dataItems.Add(new DataItem()
                    {
                        Title = title,
                        Data = attributesToDisplay
                    });
                }
                IdentifyComboBox.SelectedIndex = 0;
            }
        }

        void cb_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            int index = IdentifyComboBox.SelectedIndex;
            if (index > -1)
                IdentifyDetailsDataGrid.ItemsSource = _dataItems[index].Data;
        }
4

0 回答 0