Как вставить в столбец в сетке данных? - PullRequest
1 голос
/ 04 мая 2011
<DataGrid Width="300" Height="200" Name="datagrid">
    <DataGrid.Columns>
        <DataGridTextColumn Header="artists" />
        <DataGridTextColumn Header="albums" />
    </DataGrid.Columns>
</DataGrid>

В файле CS у меня есть:

string artist_s = "something";

Я хочу вставить строку artist_s в колонку художников.

Ответы [ 2 ]

1 голос
/ 04 мая 2011

DataGrids не принимают значения для определенных столбцов, у вас есть элементы, один элемент представляет одну строку. Пожалуйста, смотрите документацию для получения дополнительной информации и некоторых примеров.

Вы можете добавить запись, которая просто не устанавливает все свойства, например,

<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" });

Который производит:

Screenshot

Как видите, у каждого элемента есть свой ряд.


Если вы не знаете, как работают привязки, прочитайте эту статью на MSDN .

0 голосов
/ 04 мая 2011

Попробуйте:

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

Предполагается, что у вас уже определен контекст данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...