【问题标题】:Reverse stack items in the listbox WP7列表框WP7中的反向堆栈项
【发布时间】:2013-04-30 10:01:53
【问题描述】:

我目前正在处理一个列表框,该列表框显示用户导航到的最近站点。它工作正常,但我需要将列表显示堆栈反转,就像添加的最新列表应该在添加的旧项目之上。我尝试了不同的方法,但它似乎不起作用,

这是我添加项目的代码:

        list obj1 = new list();
        obj1.name = (string)webTab1.InvokeScript("eval", "document.title.toString()");
        obj1.phone = menuURL.Text;
        listBox1.Items.Add(obj1);

这段代码会一个接一个地添加项目,这是不合适的

非常感谢

【问题讨论】:

    标签: c# windows-phone-7 xaml listbox windows-phone-8


    【解决方案1】:

    这是您所要求的 WPF 版本,但它的代码对于 Windows Phone 应该是相同的。在此示例中,您将看到列表框绑定到已加载的集合。然后,当您单击反转按钮时,集合中的项目将反转。

        <Grid>
            <Button Click="Button_Click" Content="Click to reverse" Width="100" Height="100" Margin="298,106,105,105"></Button>
            <ListBox Name="lb1" HorizontalAlignment="Left" ItemsSource="{Binding urls}" Width="255">    
    
    
            </ListBox>
        </Grid>
    

    public partial class MainWindow : Window
    {
        public ObservableCollection<String> urls { get; set; }
        public MainWindow()
        {
            InitializeComponent();
            urls = new ObservableCollection<string>();
            this.DataContext = this;
            loadURLsFirstTime();
    
    
        }
    
        public void loadURLsFirstTime()
        {
            urls.Add("www.First.com");
            urls.Add("www.Second.com");
            urls.Add("www.Third.com");
            urls.Add("www.Fourth.com");
    
        }
    
        public void reverseUrls()
        {
            Stack<String> stack1 = new Stack<string>();
            foreach (String item in urls)
            {
                stack1.Push(item);
            }
            urls.Clear();
            foreach (String item in stack1)
            {
                urls.Add(item);
            }
        }
    
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            reverseUrls();
        }
    }
    

    【讨论】:

      【解决方案2】:
      listBox1.Items.Insert(0, obj1);
      

      改为

      listBox1.Items.Add(obj1);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-31
        • 1970-01-01
        • 2013-06-10
        • 1970-01-01
        • 2011-05-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多