Cómo controlar el evento click de DataGridHyperlinkColumn mediante programación a través del código (en el archivo .xaml.cs).Manejar DataGridHyperlinkColumn Hacer clic en Evento
9
A
Respuesta
10
uso esto:
<dg:DataGridHyperlinkColumn.ElementStyle>
<Style TargetType="TextBlock">
<EventSetter Event="Hyperlink.Click" Handler="OnHyperlinkClick" />
</Style>
</dg:DataGridHyperlinkColumn.ElementStyle>
</dg:DataGridHyperlinkColumn>
14
Si lo que desea es navegar por el navegador para el enlace, se trata de un simple como escribir un controlador de la siguiente manera:
void EventSetter_OnHandler(object sender, RoutedEventArgs e)
{
var destination = ((Hyperlink) e.OriginalSource).NavigateUri;
Process.Start(destination.ToString());
}
Si por el contrario desea tomar alguna acción personalizada al navegar, usando información en la fila asociada, entonces necesitará acceder al contexto de datos del hipervínculo:
void EventSetter_OnHandler(object sender, RoutedEventArgs e)
{
var rowData = ((Hyperlink) e.OriginalSource).DataContext as User;
navigationService.NavigateToUserRecordForId(rowData.Id);
}
Si desea crear mediante programación una columna de hipervínculo, y se unen a su evento click, usted puede hacer esto:
var style = new Style(typeof(TextBlock));
style.Setters.Add(new EventSetter(Hyperlink.ClickEvent, (RoutedEventHandler)EventSetter_OnHandler));
var column = new DataGridHyperlinkColumn { Header = "User", Binding = new Binding("ViewUserLink"), ElementStyle = style };
dataGrid1.Columns.Add(column);
Este stack overflow answer también tiene buena información sobre el kit de herramientas de WPF datos GridHyperlinkColumn, vale la pena echarle un vistazo.
Cuestiones relacionadas
- 1. al hacer clic en evento en wx.Panel?
- 2. Hacer clic en Evento en UITableView
- 3. Rotar texto al hacer clic en evento
- 4. Hacer doble clic en un evento en el elemento JList
- 5. ¿Cómo paso el evento al hacer clic en una vista?
- 6. enviar formulario al hacer clic en evento usando jquery
- 7. Cómo llamar a jQuery AJAX al hacer clic en evento?
- 8. crear evento con fullcalendar al hacer clic en calendar (rails)
- 9. Evitar disparar evento de foco al hacer clic en div
- 10. Manejar eventos de doble clic en elementos ListBox en C#
- 11. Manejar hipervínculo Haga clic en Evento en Outlook Mail en C#
- 12. jQuery: Al hacer clic, evitar el evento de mouseenter
- 13. ¿Cómo diferenciar entre hacer clic y arrastrar/soltar evento?
- 14. jQuery "post-clic" evento
- 15. Jquery clic evento propagación
- 16. Cómo manejar un evento ActiveX en Javascript
- 17. Haga clic en evento en UserControl- WPF
- 18. no selectora, en(), haga clic en evento
- 19. ¿Cómo puedo manejar el evento de clic de la rueda del mouse en WPF?
- 20. jQuery haga clic en elemento evento
- 21. Hacer clic en jquery
- 22. Activar un evento en `clic` y` enter`
- 23. jQuery: al hacer clic desactivar evento de clic hasta respuesta de llamada ajax
- 24. Distinga entre hacer doble clic con el mouse y hacer clic con el mouse en wpf
- 25. ¿Al hacer clic en el elemento principal, también se puede hacer clic en el elemento secundario?
- 26. Haga clic en el evento de opción
- 27. Haga clic en evento en jTable -Java
- 28. Hacer enlaces hacer clic en Javascript?
- 29. ¿Cómo puedo capturar el evento de clic derecho en JavaScript?
- 30. Acordeón de JQuery - Desvincular clic en evento
Muy útil, ¡gracias! – JohnC