漫漫技术人生路

C#

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

 

<Window x:Class="Listview.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="768" Width="1024" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
    <Window.Resources>
        <Style TargetType="Button" x:Key="ButtonStyle">
            <Setter Property="Foreground" Value="Black"></Setter>
            <Setter Property="BorderThickness" Value="1" />
        </Style>
    </Window.Resources>
        <Grid>
        <StackPanel  x:Name="ListPageNum" Margin="0" Height="auto" VerticalAlignment="Top" Orientation="Horizontal"></StackPanel>

        <Button HorizontalAlignment="Left" Margin="31,30.139,0,0" VerticalAlignment="Top" Width="86" Height="27" Content="Button" Click="btnadd_Click"/>
     <Grid x:Name="ListviewText" Margin="31,70.667,476,0" Height="213" VerticalAlignment="Top"/>
     <TextBlock HorizontalAlignment="Left" Margin="47.047,290.39,0,0" VerticalAlignment="Top" Width="Auto" Height="Auto" TextWrapping="Wrap" d:LayoutOverrides="Height"><Run Language="zh-cn" Text="开始时间"/></TextBlock>
     <TextBlock HorizontalAlignment="Left" Margin="114.047,290.39,0,0" x:Name="TextBlockstarttime" VerticalAlignment="Top" Width="Auto" Height="Auto" Text="TextBlock" TextWrapping="Wrap" d:LayoutOverrides="Height"/>
     <TextBlock Margin="286.983,290.39,0,0" VerticalAlignment="Top" Width="73.063" Height="Auto" TextWrapping="Wrap" Text="结束时间" d:LayoutOverrides="Height" HorizontalAlignment="Left"/>
     <TextBlock Margin="372.047,290.39,480.063,0" x:Name="TextBlockendtime" VerticalAlignment="Top" Height="Auto" Text="TextBlock" TextWrapping="Wrap" d:LayoutOverrides="Height"/>
        <Grid x:Name="myStackPanel" Margin="31,330,476,155"/>
        <TextBlock HorizontalAlignment="Left" Margin="47.047,0,0,39.755" Width="Auto" Height="Auto" TextWrapping="Wrap" d:LayoutOverrides="Height" VerticalAlignment="Bottom"><Run Language="zh-cn" Text="开始时间"/></TextBlock>
        <TextBlock HorizontalAlignment="Left" Margin="114.047,0,0,39.755" x:Name="TextBlockstarttime2" Width="Auto" Height="Auto" Text="TextBlock" TextWrapping="Wrap" d:LayoutOverrides="Height" VerticalAlignment="Bottom"/>
        <TextBlock Margin="286.983,0,0,39.755" Width="73.063" Height="Auto" TextWrapping="Wrap" Text="结束时间" HorizontalAlignment="Left" d:LayoutOverrides="Height" VerticalAlignment="Bottom"/>
        <TextBlock Margin="372.047,0,456.928,39.755" x:Name="TextBlockendtime2" Height="13.687" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Bottom"/>
    </Grid>
</Window>


AXML.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Collections.ObjectModel;


namespace Listview
{
    /// <summary>
    /// Window1.xaml 的交互逻辑
    /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void btnadd_Click(object sender, RoutedEventArgs e)
        {

            ListView ListView = new ListView();
            string starttime = DateTime.Now.ToString();
            for (int i = 0; i < 10000; i++)
            {
                TextBlock label = new TextBlock();
              
                label.Text = "第" + i + "个 ListItem";
                if (i < 11)
                {
                    Button bt = new Button();
                    bt.Click += new RoutedEventHandler(btClick);
                    bt.Width = 20;
                    bt.Content = i.ToString();
                    this.ListPageNum.Children.Add(bt);
                }
                ListView.Items.Add(label);
              
            }
            this.ListviewText.Children.Add(ListView);

           

            string endtime = DateTime.Now.ToString();
            this.TextBlockstarttime.Text = starttime;
            this.TextBlockendtime.Text = endtime;

 

            this.TextBlockstarttime2.Text = endtime;
            OnLoad(null, null);
            string endtime2 = DateTime.Now.ToString();
            this.TextBlockendtime2.Text = endtime2;
        }


        private void btClick(object sender, RoutedEventArgs e)
        {
            MessageBox.Show(((Button)sender).Content.ToString());
        }

        private void OnLoad(object sender, RoutedEventArgs e)
        {

            ListView myListView = new ListView();
 
            GridView myGridView = new GridView();
            myGridView.AllowsColumnReorder = true;
            myGridView.ColumnHeaderToolTip = "Employee Information";
      
            GridViewColumn gvc1 = new GridViewColumn();
            gvc1.DisplayMemberBinding = new Binding("FirstName");
            gvc1.Header = "姓";
            gvc1.Width = 100;  
            myGridView.Columns.Add(gvc1);

            GridViewColumn gvc2 = new GridViewColumn();
            gvc2.DisplayMemberBinding = new Binding("LastName");
            gvc2.Header = "名字";
            gvc2.Width = 100;
            myGridView.Columns.Add(gvc2);

            GridViewColumn gvc3 = new GridViewColumn();
            gvc3.DisplayMemberBinding = new Binding("EmployeeNumber");
            gvc3.Header = "工号";
            gvc3.Width = 100;
            myGridView.Columns.Add(gvc3);

            myListView.ItemsSource = new myEmployees();
            myListView.View = myGridView;
            myStackPanel.Children.Add(myListView);

        }
     

       
    }
    public class EmployeeInfo
    {
        private string _firstName;
        private string _lastName;
        private string _employeeNumber;

        public string FirstName
        {
            get { return _firstName; }
            set { _firstName = value; }
        }

        public string LastName
        {
            get { return _lastName; }
            set { _lastName = value; }
        }

        public string EmployeeNumber
        {
            get { return _employeeNumber; }
            set { _employeeNumber = value; }
        }

        public EmployeeInfo(string firstname, string lastname, string empnumber)
        {
            _firstName = firstname;
            _lastName = lastname;
            _employeeNumber = empnumber;
        }
    }
    public class myEmployees :
            ObservableCollection<EmployeeInfo>
    {
        public myEmployees()
        {
            for (int i = 0; i < 1000000; i++)
            {
                Add(new EmployeeInfo("Jesper", "Aaberg", i.ToString()));
                Add(new EmployeeInfo("Dominik", "Paiha", "98765"));
                Add(new EmployeeInfo("Yale", "Li", "23875"));
                Add(new EmployeeInfo("Muru", "Subramani", "49392"));
            }
        }
    }
}

posted on 2009-07-31 17:54  javaca88  阅读(339)  评论(0编辑  收藏  举报