WPF アプリケーションでデータグリッドを構築しています。ItemSource
Datagrid の はIEnumerable
コレクションにバインドされています。私は自分のプロジェクトの ViewModel を知りません。データグリッド itemsource をデータグリッドにバインドすると、その場で列ヘッダーと行の値が取得されます。
ヘッダーはありません。それは何でもありかもしれません。データグリッドで選択した行の詳細情報をグリッドに表示する必要があります。
これを行うには、SelectedItem.HeaderName をグリッドのテキストブロックにバインドする必要があります。しかし、ここでの問題は、ヘッダーの名前を知らないことです。だから私は単純にハードコードすることはできませんSelectedItem.Headername
。
また、列数はそれぞれ異なる場合があります。したがって、私の詳細ビューは、データグリッドの行が選択されたときに、ヘッダー名とそれぞれの値を動的に番号付けする必要があります。
今のところ、以下のようにxamlで結果をハーコーディングして見ました。特定のファイルについて、それぞれの列ヘッダーを知っているため、
<Label HorizontalAlignment="Stretch"
VerticalAlignment="Center"
Grid.Row="0"
Grid.Column="0">Header2:
</Label>
<TextBlock Grid.Row="0"
Grid.Column="1"
Name="Header2"
Text="{Binding SelectedItem.date, ElementName=dataGrid1}"
Width="auto"
Height="auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Center" />
<Label Grid.Row="0"
Grid.Column="2"
VerticalAlignment="Center">Header3:</Label>
<TextBlock Grid.Row="0"
Grid.Column="3"
Name="username"
Text="{Binding SelectedItem.Header3, ElementName=dataGrid1}"
Width="auto"
Height="auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Center" />
<Label Grid.Row="0"
Grid.Column="4"
VerticalAlignment="Center">Header4:</Label>
<TextBlock Grid.Row="0"
Grid.Column="5"
Name="level"
Text="{Binding SelectedItem.header4, ElementName=dataGrid1}"
Width="auto"
Height="auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Center" />
<Label Grid.Row="1"
Grid.Column="0"
VerticalAlignment="Center">Header5:</Label>
<TextBlock Grid.Row="1"
Grid.Column="1"
Name="logger"
Text="{Binding SelectedItem.header5, ElementName=dataGrid1}"
Width="auto"
Height="auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Center" />
<Label Grid.Row="1"
Grid.Column="2"
VerticalAlignment="Center">Headr6:</Label>
<TextBlock Grid.Row="1"
Grid.Column="3"
Name="thread"
Text="{Binding SelectedItem.header6, ElementName=dataGrid1}"
Width="auto"
Height="auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Center" />
私は初心者なので、これを行う方法がわかりませんでした。あなたが私を助けようとしたら、私はうれしいです。また、この動的な列の生成であるカウントに関連して読む必要があるいくつかの概念を提案し、動的な列ヘッダーを UI の他のコントロールに割り当てます。前もって感謝します!