简体   繁体   English

如何插入数据网格中的列?

[英]How to insert into a column in data grid?

<DataGrid Width="300" Height="200" Name="datagrid">
    <DataGrid.Columns>
        <DataGridTextColumn Header="artists" />
        <DataGridTextColumn Header="albums" />
    </DataGrid.Columns>
</DataGrid>

In cs file i have:在cs文件中我有:

string artist_s = "something";

I want to insert artist_s string into artists column.我想将 Artist_s 字符串插入到艺术家列中。

DataGrids don't take values for specific columns, you have items, one item represents one row. DataGrids 不为特定列取值,您有项目,一项代表一行。 Please see the documentation for more information and some examples.请参阅文档以获取更多信息和一些示例。

You could add an entry which just does not set all properties though, eg您可以添加一个不设置所有属性的条目,例如

<DataGrid Name="testGrid">
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Name}"/> <!-- Those bindings are needed to display the data -->
        <DataGridTextColumn Binding="{Binding Occupation}"/>
    </DataGrid.Columns>
</DataGrid>
testGrid.Items.Add(new { Name = "John" });
testGrid.Items.Add(new { Occupation = "Programmer" });
testGrid.Items.Add(new { Name = "Skeet", Occupation = "Übermensch" });

Which produces:产生:

截屏

As you can see each item has its own row.如您所见,每个项目都有自己的行。


If you do not know how bindings work, read this article on MSDN .如果您不知道绑定是如何工作的,请阅读MSDN 上的这篇文章

Try:尝试:

<DataGrid Width="300" Height="200" Name="datagrid">
        <DataGrid.Columns>
            <DataGridTextColumn Header="artists" Binding="{Binding artist_s}" />
            <DataGridTextColumn Header="albums" />
        </DataGrid.Columns>
</DataGrid>

This is assuming you have your data context defined already.这是假设您已经定义了数据上下文。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM