Je veux lier un contenu d'un Label
au SelectedItem
d'un DataGrid
.wpf liaison d'élément courant datagrid
Je pensais que l'expression de liaison 'current item' fonctionnerait, mais ce n'est pas le cas.
Mon code XAML et code-behind C# est comme ci-dessous:
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="512" Width="847">
<DockPanel LastChildFill="True">
<Label Content="{Binding Data/colA}" DockPanel.Dock="Top" Height="30"/>
<DataGrid ItemsSource="{Binding Data}"></DataGrid>
</DockPanel>
</Window>
namespace WpfApplication2
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.DataContext = new MyData();
}
}
public class MyData
{
DataTable data;
public MyData()
{
data = new DataTable();
data.Columns.Add("colA");
data.Columns.Add("colB");
data.Rows.Add("aa", 1);
data.Rows.Add("bb", 2);
}
public DataTable Data { get { return data; } }
}
}
L'étiquette indique le premier élément du DataTable
, et ne change pas lorsque je sélectionne d'autres articles sur le DataGrid
. Il semble que l'élément actuel de DataView
ne change pas. Que dois-je faire pour le lier à l'actuel SelectedItem
du DataGrid
?