powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Wpf составной контрол
3 сообщений из 3, страница 1 из 1
Wpf составной контрол
    #39546755
Nechto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем здравствуйте!

Подскажите пожалуйста как доработать TabContol, чтобы он не кричал на ItemsSource, что он как будто пустой?

Сам контрол, и класс который в нем должен использоваться
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
<TabControl x:Class="Work.TabItemPages"
            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"
            mc:Ignorable="d"
            x:Name="Control">
    <Grid>
        <TabControl x:Name="TabControl"
                    ItemsSource="{Binding ElementName=Control, Path=ItemsSource}" 
                    SelectedItem="{Binding ElementName=Control, Path=SelectedItem, Mode=TwoWay}"
                    SelectedIndex="0">
            <TabControl.ItemTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Path=Header}" />
                </DataTemplate>
            </TabControl.ItemTemplate>
            <TabControl.ContentTemplate>
                <DataTemplate>
                    <Frame Content="{Binding Path=PageContent}" />
                </DataTemplate>
            </TabControl.ContentTemplate>
        </TabControl>
    </Grid>
</TabControl>

Код: c#
1.
2.
3.
4.
5.
6.
7.
public class ItemPage
{
    public string Header { get; set; }
    public object Tag { get; set; }
    public Page PageContent { get; set; }
    public bool IsLoaded { get; set; } 
}



Далее модель и а представление в котором выше указанный контрол должен работать
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
public class ItemPage
{
    public ItemPage()
    {
          ItemPage = new ObservableCollection<ItemPage>
          {
                new ItemPage {Header = "Проверка"}
          };
    }

    private ObservableCollection<ItemPage> _itemPage;
    public ObservableCollection<ItemPage> ItemPage
    {
        get { return _itemPage; }
        set
        {
            if (!Equals(_itemPage, value))
            {
                _itemPage = value;
                RaisePropertyChanged("ItemPage");
            }
        }
    }
}

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<Page x:Class="Work.View1"
      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:viewModel="clr-namespace:Work.Models"
      mc:Ignorable="d" 
      d:DataContext="{d:DesignInstance viewModel:Model}">
	  <StackPanel Orientation="Vertical">
	      <wpf:TabItemPages ItemsSource="{Binding ItemPage}" />
	  </StackPanel>
</Page>
...
Рейтинг: 0 / 0
Wpf составной контрол
    #39547239
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nechto,
внешняя обертка из TabControl принципиально нужна?
...
Рейтинг: 0 / 0
Wpf составной контрол
    #39547269
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что значит кричит? ошибка падает или красное сообщение в debug output? в чем собственно проблема?
а по факту, такой binding. это bad practics, тем более, если в ItemsSource будут элементы управления, то упадет гарантированно
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Wpf составной контрол
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]