Кнопка гиперссылки в таблице данных SilverLight - PullRequest
1 голос
/ 27 июля 2011

Я прочитал пару статей, но я все еще немного сбит с толку.Как я могу сделать первый столбец каждой строки гиперссылкой.У меня есть поле с номером, и этот номер, прикрепленный к URL, поднимает страницу этого элементаЯ просто хочу, чтобы кнопка создавалась динамически, когда я заполняю сетку данных.

1 Ответ

2 голосов
/ 27 июля 2011

Я делаю это в Telerik RadGridView, но я думаю, что то же самое можно использовать в обычной DataGrid. Я создаю DataTemplate, содержащий столбец:

var dataTemplate = @"<DataTemplate xmlns=""http://schemas.microsoft.com/client/2007"" xmlns:NimbusControls=""http://schemas.nectar.inf.br/2010/xaml"">
                                    <Border Background=""Transparent"">
                                        <StackPanel Orientation=""Horizontal""
                                                    HorizontalAlignment=""Center"">
                                            <Button Command=""{Binding EditCommand}"" CommandParameter=""{Binding}"" />
                                            <Button Style=""{StaticResource GridDeleteButtonStyle}"" />
                                        </StackPanel>
                                    </Border>
                                </DataTemplate>";

Затем вы добавляете его в сетку, в Telerik я делаю так:

nimbusDataGrid.Columns.Add(new GridViewColumn
    {
        CellTemplate = (DataTemplate)XamlReader.Load(dataTemplate)
    });

Но я думаю, что это легко воспроизвести в DataGrid.

Другой путь - создать команду в объекте, который вы используете в качестве ItemsSource, и создать для него шаблон, который генерирует столбец гиперссылки.

Надеюсь, это поможет.

...