Как добавить две разные модели в качестве дочернего узла в DevExpress WPFC#

Место общения программистов C#
Anonymous
Как добавить две разные модели в качестве дочернего узла в DevExpress WPF

Сообщение Anonymous »

У меня есть этот класс:

Код: Выделить всё

public class Team
{
public int Id { get; set; }
public string Name { get; set; }
public ObservableCollection Competencies { get; set; } = new ObservableCollection();

public ObservableCollection Employees { get; set; } = new ObservableCollection();
}
И этот код у меня работает: Теперь мне нужен другой тип дочернего узла, поэтому мне нужна какая-то группировка по вещам:

Код: Выделить всё

Team (root)
- "Employees" (fixed node text, and when I click on this to present all employees for that team)
--Emp1
--Emp2
- "Competencies"  - (fixed node text, and when I click on this to present all employees for that team)
-- Competency1
-- Competency2
Также мне нужен флажок «Является ли TeamLead», но только для сотрудников.
Возможно ли это иметь разные столбцы внутри каждой группы узлов?
Возможно ли это иметь разные столбцы внутри каждой группы узлов?
p>
Обновление №1:
Я воспользовался подходом @BionicCode, предложенным подходом №1.
Вот мои обновленные и заполненные данные в коде:

Код: Выделить всё

public partial class TeamsAdmin : Page
{
public ObservableCollection TeamItems { get; set; } = new ObservableCollection();
public TeamsAdmin()
{
InitializeComponent();
DataContext = this;
TeamItems = InitData();
}
private ObservableCollection InitData()
{
// Create some sample employees
var employee1 = new Employee { Id = "1", FirstName = "John", LastName = "Doe" };
var employee2 = new Employee { Id = "2", FirstName = "Jane", LastName = "Smith" };
var employee3 = new Employee { Id = "3", FirstName = "Alice", LastName = "Johnson" };

// Create some sample competencies
var competency1 = new Competency { Id = "1", Name = "Leadership" };
var competency2 = new Competency { Id = "2", Name = "Communication" };
var competency3 = new Competency { Id = "3", Name = "Technical Skills" };

// Create EmployeeDetails and CompetencyDetails
var employeeDetails = new EmployeeDetails { TeamId = 1 };
employeeDetails.Children.Add(employee1);
employeeDetails.Children.Add(employee2);
employeeDetails.Children.Add(employee3);

var competencyDetails = new CompetencyDetails { TeamId = 1 };
competencyDetails.Children.Add(competency1);
competencyDetails.Children.Add(competency2);
competencyDetails.Children.Add(competency3);

// Create a sample team and add the details
var team1 = new Team { Id = 1, Name = "Team A" };
team1.Details.Add(employeeDetails);
team1.Details.Add(competencyDetails);

// Add the team to the TeamsItems collection
TeamItems.Add(team1);

return TeamItems;
}
}
Что касается части XAML, на данный момент у меня есть следующее:

Код: Выделить всё

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:local="clr-namespace:dfk.Pages"
xmlns:model="clr-namespace:dfk.Models"
xmlns:bh="clr-namespace:dfk.Test1"
xmlns:av="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="av"
x:Class="dfk.Pages.TeamsAdmin"
Title="Upravljanje Timovima"
Height="1080"
av:DesignWidth="1200">




























Но я все еще не уверен насчет части XAML, следует ли мне использовать HierarchialDataTemplate или?


Подробнее здесь: https://stackoverflow.com/questions/787 ... xpress-wpf

Вернуться в «C#»