2
我需要实现主/细节View
,有DataGrid
为主,相当可能TextBlock
或TextBox
成分显示为每一行场细节 - 尽管我知道DataForm
组件,但我并不确定这是否是解决方案,因为目前我没有要求支持对数据进行CRUD操作。如何在Silverlight工具包DataGrid单元格值绑定到一个TextBlock或文本框的文本属性
所以这个问题基本上是如何将每个DataGridTextColumn
绑定到任何给定控件(例如TextBlock
)的特定Text
属性,当选择不同的行时其值被增大。
的XAML
代码会是这个样子:
<!-- Master -->
<sdk:DataGrid x:Name="FoobarDataGrid" DataContext="foobar" AutoGenerateColumns="False">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn x:Name="FooDataGridColumn" Header="Foo" Binding="{Binding Foo}" />
<sdk:DataGridTextColumn x:Name="BarDataGridColumn" Header="Bar" Binding="{Binding Bar}" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
<!-- Details -->
<TextBox x:Name="FooDetailsTextBlock" Text="{Binding <!-- TODO -->}" />
<TextBox x:Name="BarDetailsTextBlock" Text="{Binding <!-- TODO -->}" />
不要犹豫,询问任何其他细节为咨询的每一位,将不胜感激。
非常感谢贡献,这是一个非常有趣的方法。 – 2011-04-06 18:11:41
我已经稍微编辑了标记:在网格中包装了TextBox组件,以避免为每个元素声明一个DataContext属性。非常感谢! – 2011-04-06 18:45:37
@Nano:我想我会去编辑我的代码来做到这一点。从来没有想到我这样做。 – 2011-04-06 18:46:48