Run, und verwechselt werden:Worum handelt es sich bei DataTable-Spaltennamen mit Punkten, die sie für das DataGrid-Steuerelement von WPF ungeeignet machen? diese
<Window x:Class="Data_Grids.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">
<StackPanel>
<DataGrid
Name="r1"
ItemsSource="{Binding Path=.}">
</DataGrid>
<DataGrid
Name="r2"
ItemsSource="{Binding Path=.}">
</DataGrid>
</StackPanel>
</Window>
Codebehind:
using System.Data;
using System.Windows;
namespace Data_Grids
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DataTable dt1, dt2;
dt1 = new DataTable();
dt2 = new DataTable();
dt1.Columns.Add("a-name", typeof(string));
dt1.Columns.Add("b-name", typeof(string));
dt1.Rows.Add(new object[] { 1, "Hi" });
dt1.Rows.Add(new object[] { 2, "Hi" });
dt1.Rows.Add(new object[] { 3, "Hi" });
dt1.Rows.Add(new object[] { 4, "Hi" });
dt1.Rows.Add(new object[] { 5, "Hi" });
dt1.Rows.Add(new object[] { 6, "Hi" });
dt1.Rows.Add(new object[] { 7, "Hi" });
dt2.Columns.Add("a.name", typeof(string));
dt2.Columns.Add("b.name", typeof(string));
dt2.Rows.Add(new object[] { 1, "Hi" });
dt2.Rows.Add(new object[] { 2, "Hi" });
dt2.Rows.Add(new object[] { 3, "Hi" });
dt2.Rows.Add(new object[] { 4, "Hi" });
dt2.Rows.Add(new object[] { 5, "Hi" });
dt2.Rows.Add(new object[] { 6, "Hi" });
dt2.Rows.Add(new object[] { 7, "Hi" });
r1.DataContext = dt1;
r2.DataContext = dt2;
}
}
}
Ich werde Ihnen sagen, was passiert. Das oberste Datagrid enthält Spaltenüberschriften und Daten. Das untere Datagrid hat Spaltenüberschriften, aber alle Zeilen sind leer.
Hatten Sie einen schlechten Tag, als Sie diesen Namespace erstellt haben? – slugster