programming-examples/c-sharp/Others/Set Binding ListView.ItemsSourceProperty to ListView.cs
2019-11-15 12:59:38 +01:00

70 lines
2.1 KiB
C#

Set Binding ListView.ItemsSourceProperty to ListView
<Window x:Class="WpfApplication1.Monitor"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:diag="clr-namespace:System.Diagnostics;assembly=System"
xmlns:debug="clr-namespace:System.Diagnostics;assembly=WindowsBase"
Title="Monitor" Height="450" Width="550">
<Grid>
<ListView Name="listView1">
<ListView.ItemTemplate>
<DataTemplate>
<WrapPanel>
<TextBlock Text="{Binding Path=Id}" MinWidth="90" />
<TextBlock Text="{Binding Path=ProcessName}" MinWidth="200" />
<TextBlock>
<TextBlock.Text>
<Binding Path="WorkingSet" />
</TextBlock.Text>
</TextBlock>
</WrapPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
</Window>
//File:Window.xaml.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.Shapes;
using System.Diagnostics;
namespace WpfApplication1
{
public partial class Monitor : Window
{
public Monitor()
{
InitializeComponent();
BindProcessesToListView();
}
private void BindProcessesToListView()
{
ObjectDataProvider provider = new ObjectDataProvider();
provider.ObjectType = typeof(Process);
provider.MethodName = "GetProcesses";
Binding binding = new Binding();
binding.Source = provider;
binding.Mode = BindingMode.OneWay;
listView1.SetBinding(ListView.ItemsSourceProperty, binding);
}
}
}