我想创建一个ItemsControl,它提供一些自己的子类,然后在使用时可以添加额外的子类,类似于内置的Expander类。
但是,在本例中,还删除了Header TextBlock。这是对问题I asked yesterday的重新表述。
LayerPanelItem.xaml:
<ItemsControl x:Class="Controls.LayerPanelItem"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel>
<TextBlock>Header</TextBlock>
<StackPanel Name="InnerContent">
<!-- Test 1 and Test 2 should go here. -->
</StackPanel>
</StackPanel>
</ItemsControl>Main.xaml:
<controls:LayerPanelItem>
<TextBlock>Test 1</TextBlock>
<TextBlock>Test 2</TextBlock>
</controls:LayerPanelItem>发布于 2010-02-18 08:47:13
如果我没理解错的话,你想要更多的HeaderedItemsControl。Expander是从HeaderedContentControl派生的,这增加了ItemsControl行为:
<HeaderedItemsControl x:Class="WpfApplication1.LayerPanelItem"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<HeaderedItemsControl.Template>
<ControlTemplate TargetType="{x:Type HeaderedItemsControl}">
<StackPanel>
<ContentPresenter ContentSource="Header"/>
<ItemsPresenter/>
</StackPanel>
</ControlTemplate>
</HeaderedItemsControl.Template>
<HeaderedItemsControl.Header>
<StackPanel>
<TextBlock>Header</TextBlock>
<TextBlock>Other stuff...</TextBlock>
</StackPanel>
</HeaderedItemsControl.Header>
</HeaderedItemsControl>https://stackoverflow.com/questions/2285492
复制相似问题