http://sweux.com/blogs/smoura/index.php/wpf/2009/06/15/wpf-toolkit-datagrid-part-iv-templatecolumns-and-row-grouping/에서 WPF DataGrid의 데이터 그룹화를 제공하는 샘플 코드를 사용했습니다. 엔터티 컬렉션 대신 DataTable을 사용하도록 예제를 수정합니다.WPF에서 DataRow 열 바인딩
내 문제는 부모가 IsExpanded 특성을 가진 엔터티에 대한 참조 인 곳에서 잘 작동하는 바인딩 선언 {Binding Parent.IsExpanded}을 약한 형식의 DataTable에 대해 작동하는 것으로 변환하는 것입니다. 여기서 Parent는 열의 이름과 동일한 DataTable의 다른 DataRow를 참조합니다. {Binding Parent.Items [IsExpanded]} 및 {Binding Parent ("IsExpanded")}와 같은 선언을 시도했지만 이들 중 아무 것도 작동하지 않는 것 같습니다.
내 DataTable에서 DataRow 부모의 IsExpanded 열에 바인딩을 만들려면 어떻게해야합니까? 사전에
감사합니다, 데이브
편집 : 나는이 문제의 일반적인 경우에 대한 몇 가지 샘플 코드를 만들었습니다
Window1.xaml :
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:WpfToolkit="http://schemas.microsoft.com/wpf/2008/toolkit"
Title="Window1" Height="300" Width="300">
<Grid>
<WpfToolkit:DataGrid
Name="dgSampleData"
ItemsSource="{Binding}"
AutoGenerateColumns="True"
Margin="0,75,0,0">
<WpfToolkit:DataGrid.Columns>
<WpfToolkit:DataGridTextColumn
Header="Bound Data"
Binding="{Binding Col3.Item(0)}"
/>
</WpfToolkit:DataGrid.Columns>
</WpfToolkit:DataGrid>
</Grid>
</Window>
Window1.xaml을. vb :
Imports System.Data
Class Window1
Private Sub Window1_Loaded(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) Handles Me.Loaded
Dim dtSampleData As New DataTable
dtSampleData.Columns.Add("Col1")
dtSampleData.Columns.Add("Col2")
dtSampleData.Columns.Add("Col3")
dtSampleData.Rows.Add(dtSampleData.NewRow())
dtSampleData.Rows.Add(dtSampleData.NewRow())
dtSampleData.Rows(0).Item(0) = "r1c1"
dtSampleData.Rows(0).Item(1) = "r1c2"
dtSampleData.Rows(0).Item(2) = dtSampleData.Rows(0)
dtSampleData.Rows(1).Item(0) = "r2c1"
dtSampleData.Rows(1).Item(1) = "r2c2"
dtSampleData.Rows(1).Item(2) = dtSampleData.Rows(0)
dgSampleData.DataContext = dtSampleData
End Sub
End Class
나는 Binding = "{Binding Co l3.Item (0)} "을 지정하면 값 r1c1이 표시되지만 셀 내용에는 아무 것도 표시되지 않습니다. 왜 그런가요? 항목 (0)은 Col3의 다른 속성일까요?
이 Simon에게 감사드립니다. 각 행에는 DataTable의 다른 행 중 하나에 대한 참조 인 Parent라는 열이 있습니다. 그게 도움이 되니? – Trindaz
@Trindaz Parent.IsExpandable 값을 무엇으로 바인딩하려고합니까? Binding 속성을 통해 어떤 종류의'DataGridColumn'? –