Đây là lớp học của tôi:Làm thế nào để thiết kế một TabPage khi ItemsSource của TabControl là Bind vào một danh sách trong WPF?
class mainViewModel
{
public List<Foo> F { get; set; }
public mainViewModel()
{
F=new List<Foo>()
{
new Foo(new Animal(){Name = "Cat"}),
new Foo(new Animal(){Name = "Dog"}),
new Foo(new Animal(){Name = "Camel"})
};
}
}
public class Foo
{
public Animal Animal { get; set; }
public Foo(Animal animal)
{
Animal = animal;
}
}
public class Animal
{
public string Name { get; set; }
}
Và Đây là MainWindow XAML Mã của tôi:
<TabControl ItemsSource="{Binding Path=F}">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Animal.Name}"/>
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
<TextBlock Text="Something 1"/>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
Bây giờ rõ ràng là tôi sẽ có một TabControl
với một trang cho mỗi mục trong danh sách F
và tất cả các trang TabControl
có một số TextBlock
Điều gì đó 1 như được hiển thị ở đây:
những gì tôi muốn chỉ là thiết kế một trong các trang. nói thêm button
mới vào trang Camel có tên Điều gì đó 3.
Tạo một ViewModel cụ thể cho từng và sử dụng 'DataTemplates' dựa trên từng loại ViewModel. Xem [ví dụ của tôi] (http://stackoverflow.com/a/15910760/643085) –
Chỉ cần biết nếu tôi hiểu, dòng này [''] cho 'WPF' cho tất cả các TabPages thuộc loại T (ở đây FileSection) DataTemplate sẽ như sau. và tôi phải thêm các điều khiển của tôi bên dưới dòng này. Tôi có đúng không? –
Đúng vậy. Sau đó, bạn tạo một Chế độ xem cụ thể cho mỗi. –