Brno? Vypsali jsme pro vás nové termíny školení Základů programování a OOP v Brně!

Diskuze: c# WPF DataGrid Hyperlink

Aktivity (4)
Avatar
Maros2470
Člen
Avatar
Maros2470:25.12.2018 18:43

Zdravím.

Mám ve WPF MVVM aplikaci DataGrid a v něm DataGridHyper­linkColumn. Jakým způsobem v tomto případě provést Command?
Díky

Zkusil jsem:

<DataGridTemplateColumn Header="Email" MinWidth="150">
                        <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock>
                                        <Hyperlink Command="{Binding Path=EmailCommand, RelativeSource={RelativeSource FindAncestor, AncestorType=Page}}" CommandParameter="{Binding Email}"/>
                                        <TextBlock Text="{Binding Path=Email}"/>
                                    </TextBlock>
                                </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>
 
Odpovědět 25.12.2018 18:43
Avatar
Maros2470
Člen
Avatar
Maros2470:25.12.2018 19:06

Zkoušel jsem i toto:

<DataGridTemplateColumn Header="Email" MinWidth="150">
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <TextBlock>
                                    <Hyperlink Command="{Binding Path=EmailCommand}" CommandParameter="{Binding Email}">
                                <TextBlock Text="{Binding Email}" />
                                    </Hyperlink>
                                </TextBlock>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>
 
Nahoru Odpovědět 25.12.2018 19:06
Avatar
Maros2470
Člen
Avatar
Maros2470:25.12.2018 20:33

Command mi už chodí přes tlačítko, ale nefunguje SelectedItem z DataGridu.

<DataGrid Name="telefonGrid" ItemsSource="{Binding Obsluhy}" SelectedItem="{Binding SelectedObsluha}" CanUserAddRows="False" Grid.Row="2" Style="{StaticResource CustData}" IsReadOnly="True" CanUserSortColumns="True" SelectionUnit="Cell">
                <DataGrid.Columns>
                    <DataGridTextColumn Header="Titul" Binding="{Binding Title}" MinWidth="100"/>
                    <DataGridTextColumn Header="Jméno" Binding="{Binding FirstName}" MinWidth="130"/>
                    <DataGridTextColumn Header="Příjmení" Binding="{Binding Surname}" MinWidth="130"/>
                    <DataGridTextColumn  Header="Telefon" Binding="{Binding Phone}" MinWidth="100"/>
                    <DataGridTextColumn  Header="Mobil" Binding="{Binding Gsm}" MinWidth="100"/>
                    <DataGridTextColumn  Header="Ulice" Binding="{Binding Ulice}" MinWidth="100" Visibility="{Binding Source={x:Static prop:Settings.Default}, Path=AdminBtnEnabled, Converter={StaticResource BoolVisibilityConverter},NotifyOnSourceUpdated=True}"/>
                    <DataGridTemplateColumn Header="Email" MinWidth="150">
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <Button Width="150" Template="{StaticResource linkButton}" Content="{Binding Email}" Command="{Binding DataContext.EmailCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DataGrid}}}" CommandParameter="{Binding Email, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DataGrid}}}"/>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>
                </DataGrid.Columns>
            </DataGrid>
 
Nahoru Odpovědět 25.12.2018 20:33
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.