Я перепробовал все и ничего не получил, так что я надеюсь, что кто-то может дать мне момент ага.
Я просто не могу получить привязку для успешного извлечения данных в сетке данных.
У меня есть DataTable, который содержит несколько столбцов с MyDataType
public class MyData
{
string nameData {get;set;}
bool showData {get;set;}
}
MyDataType имеет 2 свойства (строка, логическое значение)
Я создал тест DataTable
DataTable GetDummyData()
{
DataTable dt = new DataTable("Foo");
dt.Columns.Add(new DataColumn("AnotherColumn", typeof(MyData)));
dt.Rows.Add(new MyData("Row1C1", true));
dt.Rows.Add(new MyData("Row2C1", false));
dt.AcceptChanges();
return dt;
}
У меня есть таблица данных WPF, которую я хочу показать в своей таблице данных.
Но все, что я хочу сделать, - это изменить способ отображения каждой ячейки, чтобы отображать [TextBlock] [Button] для каждой ячейки со значениями, привязанными к объекту MyData, и именно здесь у меня масса проблем.
Мой XAML выглядит так
<Window.Resources>
<ResourceDictionary>
<DataTemplate x:Key="MyDataTemplate" DataType="MyData">
<StackPanel Orientation="Horizontal" >
<Button Background="Green" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="5,0,0,0" Content="{Binding Path=nameData}"></Button>
<TextBlock Background="Green" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5,0,0,0" Text="{Binding Path=nameData}"></TextBlock>
</StackPanel>
</DataTemplate>
</ResourceDictionary>
</Window.Resources>
<Grid>
<dg:DataGrid Grid.Row="1" ItemsSource="{Binding}" AutoGenerateColumns="True"
x:Name="dataGrid1" SelectionMode="Single" CanUserAddRows="False"
CanUserSortColumns="true" CanUserDeleteRows="False" AlternatingRowBackground="AliceBlue"
AutoGeneratingColumn="dataGrid1_AutoGeneratingColumn" />
</Grid>
Теперь все, что я делаю после загрузки, это пытаюсь привязать DataTable к WPF DataGrid
dt = GetDummyData();
dataGrid1.ItemsSource = dt.DefaultView;
TextBlock и Button отображаются, но они не привязываются, что оставляет их пустыми.
Может ли кто-нибудь дать мне знать, если у них есть идеи, как это исправить.
Это должно быть просто, вот что Microsoft заставляет нас верить.
Я установил Column.CellTemplate
во время события AutoGenerating
и все еще не получаю привязки.
Пожалуйста, помогите !!!