Trusted by the world’s leading companies
Descripción general
El control WPF TreeGrid es un control orientado a datos que muestra datos autorrelacionados en una interfaz de usuario de estructura de árbol como un treeview multicolumna. Los datos se pueden cargar bajo demanda. Los elementos se pueden mover entre nodos padre utilizando la funcionalidad integrada de arrastrar y soltar filas. Su rico conjunto de funciones incluye edición con diferentes tipos de columnas, selección y selección de nodos con casillas de verificación, ordenación y filtrado.
Enlace de datos
- Vincule cualquier dato jerárquico especificando el mapeo de hijos.
- Muestre datos autorrelacionados en una estructura de árbol especificando los mapeos de padre e hijo.
- Cargue datos bajo demanda utilizando eventos en modo entrante.

Edición
- Edite valores de celdas con editores intuitivos en diferentes tipos de columnas, como un selector de fechas o un cuadro combinado.
- Incruste controles como una barra de progreso o calificación para ver o editar datos.
- Confirme o revierta los cambios cuando un objeto de datos implementa IEditableObject .

Indicación y validación de errores de datos integrada
Valide celdas y muestre información de errores basada en los siguientes tipos de validación: IDataErrorInfo, INotifyDataErrorInfo, anotaciones de datos. O bien, utilice la validación de celdas, filas o columnas.

Modelado de datos

Ordenación
Ordene datos por una o más columnas con múltiples operaciones de personalización en WPF TreeGrid. También puede ordenar escribiendo lógica personalizada.

Filtrado
Filtre nodos utilizando una interfaz de usuario de filtrado intuitiva, integrada e inspirada en Excel, o mediante programación con varias opciones a nivel de filtro.
Selección
Los usuarios pueden realizar una selección basada en filas con un amplio soporte para la navegación por teclado. Los usuarios también pueden seleccionar filas utilizando casillas de verificación intuitivas.

Dimensionamiento de columnas
El ancho de las columnas se puede ajustar (ajuste automático) según el contenido de una columna o del encabezado de la columna. Ajuste todas las columnas dentro del viewport de un Tree Grid en WPF.
Personalización de filas y columnas

Paneles congelados
Congele columnas a la izquierda y derecha del viewport, de manera similar a Excel.

Encabezados apilados
Los encabezados apilados (intervalo de encabezado de columna) permiten a los usuarios mostrar filas de encabezado no vinculadas. Extienden las columnas de encabezado apiladas a través de múltiples filas y columnas.

Combinación de celdas
Combine datos en celdas adyacentes de forma dinámica y presente esos datos en una sola celda. También se puede escribir lógica personalizada para combinar datos.
Estilo de apariencia
La apariencia de un WPF TreeGrid y sus elementos internos, como filas, celdas, columnas y encabezados, se puede personalizar.

Arrastrar y soltar filas
Arrastre filas dentro de un control o entre controles utilizando una interfaz intuitiva de arrastrar y soltar filas.

Menú contextual
El control WPF TreeGrid proporciona un menú contextual totalmente personalizado para exponer funcionalidades en la interfaz de usuario. Los usuarios pueden crear menús contextuales para filas de registros, filas de encabezado y filas expansoras.

Operaciones de portapapeles
Realice operaciones de portapapeles como cortar, copiar y pegar dentro de un control y entre otras aplicaciones como el Bloc de notas o Excel.
MVVM
Una forma fácil y flexible de utilizar todas las propiedades y comandos necesarios de una vista de Tree Grid de WPF en un enfoque MVVM.
Carga asíncrona
El WPF TreeGrid permite la carga asíncrona de elementos bajo demanda. Esta característica permite obtener tanto elementos padre como hijos de forma asíncrona, lo que resulta en una experiencia de usuario fluida y sin interrupciones.

Localización
Localice todas las cadenas estáticas predeterminadas en el WPF TreeGrid a cualquier idioma compatible.

De derecha a izquierda (RTL)
Muestre el texto en la dirección de derecha a izquierda (RTL) para usuarios que trabajan con idiomas como hebreo, árabe o persa.

Exportación
- Un rico conjunto de opciones para exportar datos a formatos de archivo de Microsoft Excel, PDF y CSV.
- Varias opciones para personalizar las operaciones de exportación.

Ejemplo de código de WPF TreeGrid
Comience fácilmente con el WPF TreeGrid utilizando unas pocas líneas simples de código XAML o C#, como se demuestra a continuación. Explore también nuestro ejemplo de WPF TreeGrid que le muestra cómo renderizar y configurar el TreeGrid en WPF.
<Window x:Class="SfTreeGridDemo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
xmlns:local="clr-namespace:SfTreeGridDemo"
mc:Ignorable="d"
WindowStartupLocation="CenterScreen"
Title="MainWindow" Height="450" Width="800">
<Window.DataContext>
<local:ViewModel />
</Window.DataContext>
<Grid x:Name="Root_Grid">
<syncfusion:SfTreeGrid Name="treeGrid"
ChildPropertyName="Children"
ItemsSource="{Binding PersonDetails}" />
</Grid>
</Window>namespace SfTreeGridDemo
{
public class ViewModel
{
public ViewModel()
{
this.PersonDetails = this.CreatePersonData();
}
private ObservableCollection<PersonInfo> _personDetails;
public ObservableCollection<PersonInfo> PersonDetails
{
get { return _personDetails; }
set { _personDetails = value; }
}
private ObservableCollection<PersonInfo> CreatePersonData()
{
var personList = new ObservableCollection<PersonInfo>();
ObservableCollection<PersonInfo> childCollection1 = new ObservableCollection<PersonInfo>();
childCollection1.Add(new PersonInfo() { FirstName = "Andrew", LastName = "Fuller", Availability = true, Salary = 1200000 });
childCollection1.Add(new PersonInfo() { FirstName = "Theodore", LastName = "Hoover", Availability = true, Salary = 1200000 });
ObservableCollection<PersonInfo> childCollection2 = new ObservableCollection<PersonInfo>();
childCollection2.Add(new PersonInfo { FirstName = "Ronald", LastName = "Fillmore", Availability = false, Salary = 23000 });
childCollection2.Add(new PersonInfo() { FirstName = "Steven", LastName = "Buchanan", Availability = true, Salary = 340000 });
personList.Add(new PersonInfo() { FirstName = "Obama", LastName = "bosh", Availability = false, Salary = 2000000, Children = childCollection1 });
personList.Add(new PersonInfo() { FirstName = "John", LastName = "Adams", Availability = true, Salary = 2000000, Children = childCollection2 });
personList.Add(new PersonInfo() { FirstName = "Thomas", LastName = "Jefferson", Availability = true, Salary = 300000, Children = childCollection1 });
personList.Add(new PersonInfo() { FirstName = "Andrew", LastName = "Madison", Availability = false, Salary = 4000000, Children = childCollection2 });
personList.Add(new PersonInfo() { FirstName = "Ulysses", LastName = "Pierce", Availability = true, Salary = 1500000, Children = childCollection1 });
return personList;
}
}
public class PersonInfo
{
private string _firstName;
private string _lastName;
private bool _available;
private double _salary;
private ObservableCollection<PersonInfo> _children;
public string FirstName
{
get { return _firstName; }
set { _firstName = value; }
}
public string LastName
{
get { return _lastName; }
set { _lastName = value; }
}
public bool Availability
{
get { return _available; }
set { _available = value; }
}
public double Salary
{
get { return _salary; }
set { _salary = value; }
}
public ObservableCollection<PersonInfo> Children
{
get { return _children; }
set { _children = value; }
}
}
}¿No está seguro de cómo crear su primer WPF TreeGrid? Nuestra documentación puede ayudar.
Me encantaría leerlo ahora.Más de 155+ controles WPF
Preguntas frecuentes
¿Por qué debería elegir el Syncfusion WPF TreeGrid?
El Syncfusion WPF TreeGrid ofrece lo siguiente:
Enlace de datos flexible con soporte para vincular cualquier colección que implemente la interfaz IEnumerable.
- Soporte para un modo no vinculado donde los datos se cargan bajo demanda a través de eventos.
Carga instantánea de datos autorrelacionados para mostrar en una estructura de árbol bajo demanda y una rica interacción de UI.
Un montón de funciones con opciones de personalización adecuadas para crear aplicaciones complejas a gran escala.
Operaciones CRUD utilizando varios modos de edición y reglas de validación integradas.
- Alto rendimiento.
- Configuración y APIs sencillas.
- Interfaz de usuario táctil y adaptable.
Extensas demos y documentación para que pueda comenzar rápidamente con el TreeGrid para WPF.
¿Puedo descargar y utilizar el Syncfusion WPF TreeGrid de forma gratuita?
No, este es un producto comercial y requiere una licencia paga. Sin embargo, una licencia comunitaria gratuita también está disponible para empresas e individuos que tengan menos de $1 millón de USD en ingresos brutos anuales y cinco o menos desarrolladores.
¿Cómo comienzo con el Syncfusion WPF TreeGrid?
Un buen lugar para comenzar sería nuestra completa documentación de inicio rápido.
Nuestros clientes nos aman
Premios
Grandeza: Decir que la tienes es una cosa, pero significa más cuando otros la reconocen. Syncfusion® se enorgullece de haber recibido los siguientes premios de la industria.