2012-01-02 52 views
0

我可以检索数据。然而,我并不想将这些数据绑定到我的列表框中。从Webservice中检索数据并在列表框中显示它们

XAML文件中的代码

<ListBox Grid.Row="1" Height="Auto" HorizontalAlignment="Left" Margin="12,140,0,0" Name="lb_AllActivity" VerticalAlignment="Top" Width="Auto" FontFamily="Tahoma" FontSize="25"> 
        <ListBox.ItemTemplate> 
         <DataTemplate> 
          <Grid> 
           <Border Margin="3"> 
            <StackPanel Background="Transparent" Orientation="Vertical" Width="420" Height="60"> 
             <StackPanel Background="Transparent" Orientation="Horizontal" Width="420" Height="60"> 
              <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding DateTime}"></TextBlock> 
              <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding Amt}"></TextBlock> 
              <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding Msg}"></TextBlock>      
             </StackPanel> 
            </StackPanel> 
           </Border> 
          </Grid> 
         </DataTemplate> 
        </ListBox.ItemTemplate> 
       </ListBox> 

我已经在我的CS文件中的下列代码

public partial class Activities : PhoneApplicationPage 
    { 
     DatabaseService.ServiceSoapClient dbService = new DatabaseService.ServiceSoapClient(); 


     public Activities() 
     { 
      InitializeComponent(); 
      InitializeComponent(); 
      dbService.getAllActivityAsync("Russell Loh"); 
      dbService.getAllActivityCompleted += new EventHandler<DatabaseService.getAllActivityCompletedEventArgs>(dbService_getAllActivity); 

     } 

     public class AllActivity 
     { 
      public string TransID { get; set; } 
      public string Amt { get; set; } 
      public string Cat { get; set; } 
      public string SharedNo { get; set; } 
      public string Msg { get; set; } 
      public string DateTime { get; set; } 
     } 

     void dbService_getAllActivity(object sender, DatabaseService.getAllActivityCompletedEventArgs e) 
     { 

      if (e.Error == null) 
      { 
       string result = e.Result; 
       string[] arrayActivity = result.Split('~'); 

       string[] transID = arrayActivity[0].Split('#'); 
       string[] amount = arrayActivity[1].Split('#'); 
       string[] category = arrayActivity[2].Split('#'); 
       string[] sharedNum = arrayActivity[3].Split('#'); 
       string[] message = arrayActivity[4].Split('#'); 
       string[] dateTime = arrayActivity[5].Split('#'); 

       List<String> Activitylist = new List<String>(); 

       for (int i = 0; i < transID.Length; i++) 
       { 
        string TransID = transID[i]; 
        string Amt = amount[i]; 
        string Cat = category[i]; 
        string SharedNo = sharedNum[i]; 
        string Msg = message[i]; 
        string DateTime = dateTime[i]; 


        //Activitylist.Add(DateTime + " $" + Amt); 
        Activitylist.Add(DateTime); 
        Activitylist.Add(Msg); 
        Activitylist.Add(Amt); 

       } 

       lb_AllActivity.ItemsSource = Activitylist; 

      } 

      } 

回答

1

虽然我不是100%肯定你正在尝试做的,但我想.. 。

您还没有填充您的ActivityListListBox正确

  for (int i = 0; i < transID.Length; i++) 
       { 
        string TransID = transID[i]; 
        string Amt = amount[i]; 
        string Cat = category[i]; 
        string SharedNo = sharedNum[i]; 
        string Msg = message[i]; 
        string DateTime = dateTime[i]; 

        //create a new instance of activity    
        AllActivity activity = new AllActivity(); 
        activity.Amt = Amt; 
        activity.Msg = Msg; 
        activity.DateTime = DateTime;      

        ActivityList.Add(activity); 
       } 
+0

我正在尝试从web服务 DATAS通过我的斯普利特,我其实劈裂以上(RESULT1,结果2 ...等) 结果我还是老样子无法活动添加到ActivityList。 我现在应该做什么?我对移动应用程序很陌生。 – user1125911 2012-01-02 14:03:17

+0

public string getAllActivity(string userName) { string result1 =“”; string result2 =“”; string result3 =“”; string result4 =“”; string result5 =“”; string result6 =“”; string sql =“EXEC GetAllActivities'”+ userName +“'”; SqlCommand cmd = new SqlCommand(sql,sqlConnection); SqlDataReader阅读器; 尝试 sqlConnection.Open(); reader = cmd.ExecuteReader(); while(reader.Read()) { – user1125911 2012-01-02 14:03:54

+0

result1 + = reader [0] +“#”; result2 + = reader [1] +“#”; result3 + = reader [2] +“#”; result4 + = reader [3] +“#”; result5 + = reader [4] +“#”; result6 + = reader [5] +“#”; } } 赶上(例外){} 返回RESULT1 + “〜” + RESULT2 + “〜” + result3 + “〜” + result4 + “〜” + result5 + “〜” + result6; } – user1125911 2012-01-02 14:04:28

相关问题