Syncfusion Feedback

Trusted by the world’s leading companies

Syncfusion Trusted 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.

Ilustración de enlace de datos de WPF TreeGrid.


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 .

Edición con un editor de selector de fecha en WPF TreeGrid.


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.

Validación de datos en WPF TreeGrid.


Modelado de datos

Ordenación de columnas en WPF TreeGrid.

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 en WPF TreeGrid.

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.

Selección de filas en WPF TreeGrid.


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

Columnas congeladas en WPF TreeGrid.

Paneles congelados

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

Encabezados apilados en WPF TreeGrid.

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.

WPF TreeGrid muestra celdas combinadas.

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.

Estilo de apariencia en WPF TreeGrid.


Arrastrar y soltar filas

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

Arrastrar y soltar filas en WPF TreeGrid.


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.

WPF TreeGrid muestra el menú contextual.


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.

Carga asíncrona en WPF TreeGrid.


Localización

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

Localización en WPF TreeGrid.


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.

Modo de derecha a izquierda en WPF TreeGrid.


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.

Ilustración de exportación de WPF TreeGrid.


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



Más de 155+ controles WPF

Preguntas frecuentes

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.

Puede encontrar nuestra demo del WPF TreeGrid en:

GitHub ubicación.

App center ubicación.

Microsoft ubicación.

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.

Un buen lugar para comenzar sería nuestra completa documentación de inicio rápido.

Nuestros clientes nos aman

Con un excelente conjunto de herramientas y un gran equipo de soporte, Syncfusion® reduce el tiempo de desarrollo de los clientes.
Estas son algunas de sus experiencias.

Ver historias de éxito reales

Desarrolladores de todo el mundo confían en Essential Studio de Syncfusion para simplificar proyectos complejos y acelerar la entrega. Con una amplia biblioteca de controles de interfaz de usuario, potentes SDK y soporte confiable, Essential Studio ayuda a los equipos a crear aplicaciones de nivel empresarial con confianza.

Explorar estudios de caso


Calificado por usuarios de todo el mundo

Transforme sus aplicaciones hoy descargando la versión gratuita ya y
Descargar prueba gratuita No se requiere tarjeta de crédito.

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.

Up arrow icon