WPF TabControl ContentTemplate List

Неопытный с WPF, поэтому мне нужно немного помочь. Оцените помощь заранее.

У меня есть следующий класс:

public class TabDefn
{
    public TabDefn() { }

    public TabDefn(string inFolderName, List<FilesFolder> inFilesFolders)
    {
        folderName = inFolderName;
        FFs = inFilesFolders;
    }

    public string folderName { get; set; }
    public List<FilesFolder> FFs {get; set;}
}

public class FilesFolder
     {
    public FilesFolder() {}

    //public Image image { get; set; }
    public string ffName { get; set; }
    //public Image arrow { get; set; }
}

TabControl.ItemContent работает нормально. Я ничего не могу показать TabControl.ContentTemplate, Я перепробовал много вещей, но именно здесь сейчас находится WPF:

<TabControl Grid.Column="1" Grid.Row="1" Visibility="Hidden" Name="Actions">
   <!-- This displays the tab heading perfectly.-->
   <TabControl.ItemTemplate>
      <DataTemplate>
         <TextBlock Text="{Binding folderName}" />
      </DataTemplate>
   </TabControl.ItemTemplate>
   <!-- This is the content of the tab that I can't get anything to show up in.-->
   <TabControl.ContentTemplate>
      <DataTemplate>
         <ListBox ItemsSource="{Binding FF}">
            <ListBox.ItemTemplate>
               <DataTemplate>
                  <StackPanel Orientation="Horizontal">
                     <TextBox Text="{Binding ffName}"  />
                  </StackPanel>
               </DataTemplate>
            </ListBox.ItemTemplate>
         </ListBox>
      </DataTemplate>
   </TabControl.ContentTemplate>
</TabControl>

Мне все равно, если содержание меняется, поэтому мне не нужно INotifyPropertyChanged или же ObservableCollection, Однако, если мне придется поместить весь этот код, пусть будет так.

1 ответ

Решение

Вы заявляете FF как поле, которое является недопустимым источником привязки. Вы должны преобразовать это в собственность

public List<FilesFolders> FF { get; set; }

и инициализировать его, например, в TabDefn конструктор. Вы можете узнать больше о том, что является допустимым источником привязки на MSDN

Другие вопросы по тегам