ListView denetimi, farklı taslaklarda veya görünümlerde veri öğeleri kümesini görüntülemek için altyapı sağlar. Örneğin, kullanıcı bir tabloda veri öğelerini görüntülemek ve ayrıca sütunları sıralamak isteyebilir.
Listview kullanımını gösteren, ekleme ve silme işlemini gerçekleştiren örneği inceleyelim.
Listview’ in XAML tarafında kdlarını inceleyelim.
1 2 3 4 5 6 7 8 9 |
<ListView> <ListView.View> <GridView> // .................. </GridView> </ListView.View> </ListView> |
Kodları incelediğimizde Listview ve ListView içerisine gömülü olan bir GridView olduğunu görüyoruz.
Uygulamamıza ait XAML kodlarının tamamı aşağıdaki gibi olacaktır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
<Window x:Class="WpfApplication25.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"> <Canvas> <ListView HorizontalAlignment="Left" Height="188" VerticalAlignment="Top" Width="505" Name="lst" Canvas.Left="2" Loaded="lst_Loaded" > <ListView.View> <GridView> <GridViewColumn Header="ADI" DisplayMemberBinding="{Binding ADI}" Width="100"/> <GridViewColumn Header="SOYADI" DisplayMemberBinding="{Binding SOYADI}" Width="100"/> <GridViewColumn Header="NUMARASI" DisplayMemberBinding="{Binding NUMARASI}" Width="100"/> </GridView> </ListView.View> <TextBox Width="127"/> </ListView> <Button Content="Ekle" Height="29" Width="124" Canvas.Left="80" Canvas.Top="256" Click="Button_Click"></Button> <Button Content="Sil" Height="29" Width="124" Canvas.Left="270" Canvas.Top="256" Click="Button_Click_1"></Button> <TextBox x:Name="txt1" Width="127" Canvas.Left="22" Canvas.Top="221"></TextBox> <TextBox x:Name="txt2" Width="127" Canvas.Left="353" Canvas.Top="219"></TextBox> <TextBox x:Name="txt3" Width="127" Canvas.Left="188" Canvas.Top="219"></TextBox> <Label Content="ADI" Canvas.Left="22" Canvas.Top="193"/> <Label Content="SOYADI" Canvas.Left="188" Canvas.Top="193"/> <Label Content="NUMARASI" Canvas.Left="353" Canvas.Top="193"/> </Canvas> </Window> |
C# kodlarımız;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void lst_Loaded(object sender, RoutedEventArgs e) { lst.Items.Add(new { ADI = "DİLAN", SOYADI = "ÖZKANAT", NUMARASI = 100 }); lst.Items.Add(new { ADI = "ŞEYMA", SOYADI = "IŞIK", NUMARASI = 130 }); lst.Items.Add(new { ADI = "AHMET", SOYADI = "CANSEVER", NUMARASI = 40 }); lst.Items.Add(new { ADI = "RECEP", SOYADI = "ORTAKÖYLÜ", NUMARASI = 40 }); } private void Button_Click(object sender, RoutedEventArgs e) { lst.Items.Add(new { ADI = txt1.Text, SOYADI = txt3.Text, NUMARASI = (Convert.ToInt32(txt2.Text)) }); } private void Button_Click_1(object sender, RoutedEventArgs e) { lst.Items.Remove(lst.SelectedItem); } } |
Hazırlayan: Dilan ÖZKANAT
Merhaba
Benim yaşadığım bir sorun var yardımcı olursanız sevinirim.
Şimdi C# WPF’de listview kullanıyorum ve bu listviewde 6 kolondan oluşan bir tablo var ben seçtiğim indexdeki örneğin name kolunundaki seçili olan veriyi index numarasına göre almak istiyorum nasıl yapabilirim çok araştırdım ama bulamadım
Wpf listwiev örneğiniz Sade ve anlaşılır olmuş. Yazılarınızın devamını bekliyorum.