2009-08-03 81 views
0

如何在列表框中水平顯示數據。我已經使用屬性從文本框中讀取數據,我必須將這些多個數據顯示在列表框中(在一行中,水平地)。我的代碼如下所示..水平顯示多個數據

private void SaveButton_Click(object sender, RoutedEventArgs e) 
    { 
     LoadData(); 



    } 

private void LoadData() 
    { 
     List<ItemList> MyList = new List<ItemList>(); 
     MyList.Add(new ItemList { Subject = subjectText.Text }); 
     MyList.Add(new ItemList { Createdtext = CreatedText.Text }); 
     MyList.Add(new ItemList { Calendartext = CalendarText.Text }); 
     MyList.Add(new ItemList { TimeText = TimeText.Text }); 
     MyList.Add(new ItemList { AssignedText = AssignedText.Text }); 
     MyList.Add(new ItemList { DescriptionText = DescriptText.Text }); 
     MyList.Add(new ItemList { TargetdateText = TargetDateText.Text }); 

     MyListBox.ItemsSource = MyList; 

    } 

獲取數據的屬性是:

public class ItemList 
{ 
    private string _subject; 
    private string _createdtext; 
    private string _calendartext; 
    private string _timeText; 
    private string _assignedText; 
    private string _descriptionText; 
    private string _targetdateText; 


    public string Subject 
    { 
     get 
     { 
      return _subject; 
     } 
     set 
     { 
      _subject = value; 
     } 
    } 

    public string Createdtext 
    { 
     get 
     { 
      return _createdtext; 
     } 
     set 
     { 
      _createdtext = value; 
     } 
    } 

    public string Calendartext 
    { 
     get 
     { 
      return _calendartext; 
     } 

     set 
     { 
      _calendartext = value; 
     } 
    } 

    public string TimeText 
    { 
     get 
     { 
      return _timeText; 
     } 

     set 
     { 
      _timeText = value; 
     } 
    } 

    public string AssignedText 
    { 
     get 
     { 
      return _assignedText; 
     } 

     set 
     { 
      _assignedText = value; 
     } 
    } 

    public string DescriptionText 
    { 
     get 
     { 
      return _descriptionText; 
     } 

     set 
     { 
      _descriptionText = value; 
     } 
    } 

    public string TargetdateText 
    { 
     get 
     { 
      return _targetdateText; 
     } 

     set 
     { 
      _targetdateText = value; 
     } 
    } 
} 

我的列表框XAML代碼如下所示

<ListBox x:Name="MyListBox" ItemsSource="ItemList" Grid.ColumnSpan="6" HorizontalAlignment="Left" Grid.Column="1" Grid.Row="8" Width="600" Height="96"> 
     <ListBox.ItemTemplate> 
      <DataTemplate> 
       <StackPanel Orientation="Horizontal" > 
        <Grid ShowGridLines="True" Width="700"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
          <ColumnDefinition Width="100" /> 
         </Grid.ColumnDefinitions> 
         <Grid.RowDefinitions> 
          <RowDefinition Height="25" /> 

         </Grid.RowDefinitions> 

        <TextBlock Text="{Binding Subject}" Grid.Column="0"/> 
        <TextBlock Text="{Binding Createdtext}" Grid.Column="1" /> 
        <TextBlock Text="{Binding Calendartext}" Grid.Column="2" /> 
        <TextBlock Text="{Binding Timetext}" Grid.Column="3"/> 
        <TextBlock Text="{Binding AssignedText}" Grid.Column="4"/> 
        <TextBlock Text="{Binding DescriptionText}" Grid.Column="5" /> 
        <TextBlock Text="{Binding TargetdateText}" Grid.Column="6"/> 
        </Grid> 
       </StackPanel> 
      </DataTemplate> 
     </ListBox.ItemTemplate> 
    </ListBox> 
</Grid> 

,但我沒有得到輸出在一行中。它顯示在對角。什麼是獲得正確的輸出需要的變化..

+0

This is a dupe of http://stackoverflow.com/questions/1165236/silverlight-3-list-box – 2009-08-03 13:37:32

回答

2
<ListBox x:Name="MyListBox" ItemsSource="ItemList" Grid.ColumnSpan="6" HorizontalAlignment="Left" Grid.Column="1" Grid.Row="8" Width="600" Height="96"> 
... 
     <ListBox.ItemsPanel> 
        <ItemsPanelTemplate> 
         <StackPanel Orientation="Horizontal"/> 
        </ItemsPanelTemplate> 
       </ListBox.ItemsPanel> 
... 
</ListBox> 

試試這個

+0

Silverlight 2.0上的標籤是否可用? – MAC 2009-08-03 12:06:58