初始WPF,感觉还不错,可能因为WEB有关系,现在是做web项目突然想写点WPF的程序玩玩,结果自我感觉不太难 嘿嘿上代码。
在网上找了个简单的例子,试着做了做。
有些乱 见谅。嘿嘿
<Window x:Class="WPF1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<ListView Name="listview1" Grid.Row="0" MinWidth="280">
<ListView.View>
<GridView>
<GridViewColumn Width="70" Header="ID" DisplayMemberBinding="{Binding Path=ID}"></GridViewColumn>
<GridViewColumn Width="70" Header="Name" DisplayMemberBinding="{Binding Path=Name}"></GridViewColumn>
<GridViewColumn Width="70" Header="Gender" DisplayMemberBinding="{Binding Path=Gender}"></GridViewColumn>
<GridViewColumn Width="70" Header="Age" DisplayMemberBinding="{Binding Path=Age}"></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
<WrapPanel Grid.Row="1" Orientation="Horizontal" DataContext="{Binding ElementName=listview1,Path=SelectedItem}">
<StackPanel Orientation="Horizontal" Margin="5,2,5,2">
<TextBlock Text="ID:"></TextBlock>
<TextBox MinWidth="100" Text="{Binding Path=ID}"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5,2,5,2">
<TextBlock Text="Name:"></TextBlock>
<TextBox MinWidth="100" Text="{Binding Path=Name}"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5,2,5,2">
<TextBlock Text="Gender:"></TextBlock>
<TextBox MinWidth="100" Text="{Binding Path=Gender}"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="5,2,5,2">
<TextBlock Text="Age:"></TextBlock>
<TextBox MinWidth="100" Text="{Binding Path=Age}"/>
</StackPanel>
</WrapPanel>
</Grid>
</Window>
界面:

后台代码:
Model:
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
public bool Gender { get; set; }
public int Age { get; set; }
}
DAL:
public class PersonDAL {
private static List<Person> _listPerson;
public PersonDAL()
{
_listPerson = new List<Person>();
}
public void AddPerson(Person p)
{
_listPerson.Add(p);
}
public List<Person> GetAllPerson()
{
return _listPerson;
}
}
BLL:
public class PersonBLL {
private PersonDAL PD;
public PersonBLL() {
PD = new PersonDAL();
PD.AddPerson(new Person() { ID = 1, Name = "s1", Gender = true, Age = 10 });
PD.AddPerson(new Person() { ID = 2, Name = "s2", Gender = true, Age = 20 });
PD.AddPerson(new Person() { ID = 3, Name = "s3", Gender = true, Age = 30 });
PD.AddPerson(new Person() { ID = 4, Name = "s4", Gender = true, Age = 40 });
PD.AddPerson(new Person() { ID = 5, Name = "s5", Gender = true, Age = 50 });
}
public List<Person> GetAllPerson()
{
return PD.GetAllPerson();
}
}
前台的后台代码:
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
this.Loaded += new RoutedEventHandler(MainWindow_Loaded);
}
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
this.listview1.ItemsSource = new PersonBLL().GetAllPerson();
}
}