我有一个带有一个组合框的表单,该表单包含数据库中表的名称,方法是选择将gridcontrol itemssource设置为该表的任何表,并显示该表中的所有记录。 我需要做的是,我需要为所选表中的每一列添加一个标签和一个文本框,并将值绑定到gridcontrol中的所选行。
这段代码为我提供了有关所选表中列的正确信息:
tabeleK3 = selectQuery("DESCRIBE " & comboBox.SelectedItem("TABLE_NAME"))
For Each row As DataRow In tabeleK3.Rows
Console.WriteLine(row.Item("Field") & " - " & row.Item("Type"))
Next row
这是我的一张桌子的输出:
ip - varchar(15)
timestamp - int(11) unsigned
knt - varchar(7)
tip - int(11)
tem - int(11)
对于这5列,我需要添加文本框和标签(列的名称)。文本框应绑定到gridcontrol,这是gridcontrol代码:
tabeleK2 = selectQuery("select * from " & comboBox.SelectedItem("TABLE_NAME"))
gridData.ItemsSource = tabeleK2
答案 0 :(得分:0)
您可以在XAML标记的DataGrid
中添加DataGridTemplateColumn:
<DataGrid x:Name="gridData">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="label..." />
<TextBox Text="{Binding YourField}" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>