我有一個程序將數據從4個文本框綁定到ListView。將數據從textBox綁定到ListView
XAML代碼:
<Window x:Class="TestBindingData.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="324" Width="592">
<Grid>
<ListView Height="209" HorizontalAlignment="Left" Margin="12,64,0,0" Name="listView1" VerticalAlignment="Top" Width="546" >
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding STT}" Header="STT" Width="50"/>
<GridViewColumn DisplayMemberBinding="{Binding HVT}" Header="Name" Width="200"/>
<GridViewColumn DisplayMemberBinding="{Binding Age}" Header="Age" Width="50"/>
<GridViewColumn DisplayMemberBinding="{Binding State}" Header="State" Width="200"/>
</GridView>
</ListView.View>
</ListView>
<TextBox Height="22" HorizontalAlignment="Left" Margin="99,25,0,0" Name="textBox1" VerticalAlignment="Top" Width="45" />
<TextBox Height="22" HorizontalAlignment="Left" Margin="150,25,0,0" Name="textBox2" VerticalAlignment="Top" Width="138" />
<TextBox Height="22" HorizontalAlignment="Left" Margin="294,25,0,0" Name="textBox3" VerticalAlignment="Top" Width="45" />
<TextBox Height="22" HorizontalAlignment="Left" Margin="345,25,0,0" Name="textBox4" VerticalAlignment="Top" Width="92" />
<Button Content="Add" Height="23" HorizontalAlignment="Left" Margin="461,27,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click" />
</Grid>
</Window>
主窗口代碼:
namespace TestBindingData
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
class person
{
public string STT { get; set; }
public string HVT { get; set; }
public string Age { get; set; }
public string State { get; set; }
}
private void button1_Click(object sender, RoutedEventArgs e)
{
List<person> people = new List<person>();
people.Add(new person() { STT = textBox1.Text.ToString(), HVT = textBox2.Text.ToString(), Age = textBox3.Text.ToString(), State = textBox4.Text.ToString() });
this.listView1.ItemsSource = people;
}
}
}
當我點擊添加按鈕,程序會添加包含人的一行信息。但是我不能在第1行之後添加第2行,第3行! 請幫忙,謝謝!
爲什麼要用文本框添加數據?如果您使用datagrid並將可觀察集合綁定到它,則不需要textbox和ListView。 Offcourse你也可以單獨使用ListView。 – whoisthis
由於@CSharpYouDull指出你應該將你的listview綁定到你的viewmodel中的一個ObservableCollection,然後Command將按鈕綁定到你的viewmodel,在那裏你將數據添加到現有的ObservableCollection中 – whoisthis
OK,謝謝@bjoshi – user2627651