0

Вот мой код и то, что результат, когда я его запускаю. Я действительно в недоумении по этому поводу. Любая помощь будет оценена по достоинству.Мне нужно добавить наблюдаемый коллектив к наблюдаемому коллекционированию.

VALIDATIONITEM КЛАСС:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Collections.ObjectModel; 

namespace ValidationWPF.DataSources 
{ 
    public class ValidationItem : ObservableCollection<ValidationItem> 
    { 
     public ValidationItem() 
     { 
      SubItems = new ObservableCollection<ValidationItem>(); 


     } 


     public ObservableCollection<ValidationMessages> Messages 
     { 
      get; 
      set; 
     } 

     public string item 
     { 
      get; 
      set; 
     } 

     public IList<ValidationItem> SubItems 
     { 
      get; 
      set; 
     } 

     public static IList<ValidationItem> GetItems(string name) 
     { 
      var Validation = new ObservableCollection<ValidationItem>(); 


      var item = new ValidationItem(); 
      item.item = "Customer"; 


      var subItem = new ValidationItem(); 
      subItem.item = "Name"; 
      item.SubItems.Add(subItem); 

      var Message = new ValidationItem(); 
      Message.item = new ObservableCollection<ValidationMessages>().ToString(); 
      subItem.SubItems.Add(Message); 





      Validation.Add(item); 

      return Validation; 

     } 
    } 
} 

VALIDATIONMESSAGES CLASS (должна быть реализована в Validation класса Item)

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Collections.ObjectModel; 

namespace ValidationWPF.DataSources 
{ 
    public class ValidationMessages 
    { 
     public ValidationMessages(string Message) 
     { 
      this.Message = Message; 
     } 

      public string Message 
      { 
       get; 
       set; 
      } 


    } 
} 

VALIDATIONUSERCONTROL XAML:

<UserControl x:Class="ValidationWPF.ValidationUserControl" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" 
      xmlns:local="clr-namespace:ValidationWPF.DataSources" 
      mc:Ignorable="d" 
      d:DesignHeight="300" d:DesignWidth="300"> 
    <UserControl.Resources> 



    </UserControl.Resources> 
    <Grid x:Name="LayoutRoot" Background="White"> 

     <telerik:RadTreeView x:Name="radTreeView" Margin="8"> 
      <telerik:RadTreeView.ItemTemplate> 

       <HierarchicalDataTemplate ItemsSource="{Binding SubItems}"> 
        <TextBlock Text="{Binding item}" /> 
       </HierarchicalDataTemplate> 

      </telerik:RadTreeView.ItemTemplate> 
     </telerik:RadTreeView> 

    </Grid> 
</UserControl> 

ВЫВОД:

Customer 
     Name 
     Message Below* 
    *System.Collections.ObjectModel.ObservableCollection'1[ValidationWPF.DataSources.ValidationMessages] 

ответ

0

Ваше item свойство должно быть типа ObservableCollection<ValidationMessages> Если нет, то вы должны сначала перебирать item коллекции и создать строку сообщений проверки перед назначением его к Message.item.

0

ваш выход в порядке причина Вы писали:

Message.item = new ObservableCollection<ValidationMessages>().ToString(); 
+0

Но мой вывод должен содержать сообщения, которые я установил в классе Validation Messages. Вместо этого он содержит: System.Collections.ObjectModel.ObservableCollection'1 [ValidationWPF.DataSources.ValidationMessages] – JLott

Смежные вопросы