2012-05-15 309 views
0

這裏是我想要提取enjoymentID不能獲得選擇列表框中

The inner data details i want to extract

像我想從數據中提取的enjoymentID有界選擇的項目,但我嘗試了所有的網絡仍然沒有可用的方法由於invalidCastException而提取它。有沒有人可以幫我解決這個問題?緊急。謝謝= d

private void listBox1_SelectionChanged(object sender, SelectionChangedEventArgs e) 
    { 
     SuperData data = (sender as ListBox).SelectedItem as SuperData; 
     ListBoxItem selected = this.listBox1.ItemContainerGenerator.ContainerFromItem(data) as ListBoxItem; 
    } 

我嘗試這樣做,也e.AddedItem [0],但仍無法得到它。

<Grid> 
       <ListBox HorizontalAlignment="Stretch" Margin="0,0,0,0" Name="listBox1" VerticalAlignment="Stretch" SelectionChanged="listBox1_SelectionChanged"> 
        <ListBox.ItemTemplate> 
         <DataTemplate> 
          <StackPanel Orientation="Horizontal" Height="132"> 
           <Image Source="{Binding image}" Height="73" Width="73" VerticalAlignment="Top" Margin="0,10,8,0"/> 
           <StackPanel Width="370"> 
            <TextBlock Text="{Binding title}" Foreground="#FFC8AB14" FontSize="28" /> 
            <!--TextBlock Text="{Binding Message}" TextWrapping="Wrap" FontSize="24" /--> 
            <TextBlock Text="{Binding description}" TextWrapping="Wrap" FontSize="24" /> 
            <TextBlock Text="Test" TextWrapping="Wrap" FontSize="24" /> 
           </StackPanel> 
          </StackPanel> 
         </DataTemplate> 
        </ListBox.ItemTemplate> 
       </ListBox> 
      </Grid> 

這是我綁定數據的UI部分。從WCF的返回是列表數據類型,我只是綁定到列表框listBox1.ItemsSource = e.Result;

public int category { get; set; } 
    public int categoryField { get; set; } 
    public string description { get; set; } 
    public string descriptionField { get; set; } 
    public int enjoymentID { get; set; } 
    public int enjoymentIDField { get; set; } 
    public string image { get; set; } 
    public string imageField { get; set; } 
    public object PropertyChanged { get; set; } << i don't know what is this 
    public string title { get; set; } 
    public string titleField { get; set; } 

這裏面e.AddedItem內容[0]也= d

enter image description here

+0

SelectionChanged事件觸發時,e.AddedItem數組的內容是什麼? –

+0

請參閱打印屏幕= D – 1myb

+0

這些是特定類型的屬性,e.AddedItems [0]是什麼類型?你有沒有嘗試將e.AddedItems [0]轉換爲該類型?如果該投射成功,則您應該可以訪問這些屬性的基礎屬性和值。 –

回答

1

從你的屏幕截圖中,陣列的第一項的類型是RoyalEnjoyment.REServiceReference.REData,如果您將e.AddedItems [0]轉換爲此類型,則應該可以訪問各種屬性值。

例如,RoyalEnjoyment.REServiceReference.REData x =(RoyalEnjoyment.REServiceReference.REData)e.AddedItems [0];