有没有人有一个想法,如何创建一个可折叠的ListView?带有可折叠项目的ListView?
例如我有一个ListView与列:姓名,年龄,县
和下面的条目:
+ Max | 20 | Switzerland
+ Joe | 25 | Germany
+ Bob | 30 | Italy
当我点击+,我想ListView控件崩溃像这样的:
- Max | 20 | Switzerland
Lastname: Eastwood
Phone: 0041 11 222 33 44
+ Joe | 25 | Germany
+ Bob | 30 | Italy
感谢您的帮助和想法! PS:在我的情况下,根据“人物”对象
(例如),我将拥有两种不同类型的信息。
- 有些人会告诉我姓+电话号码#
- 从其他人我会看到工作+雇主..我想这可能与某种数据触发器?
编辑:
我编辑的代码如下:
<ListView ItemsSource="{Binding Path=DisplayedListe, Mode=OneWay}"
VirtualizingStackPanel.IsVirtualizing="True"
IsSynchronizedWithCurrentItem="True"
Sorter:ListViewSorter.IsListviewSortable="True"
Name="mainListView"
>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<ToggleButton x:Name="ToggleButton" Grid.Column="0" Content="+"/>
<Label Grid.Column="1" Content="Max"/>
<Label Grid.Column="2" Content="20"/>
<Label Grid.Column="3" Content="Switzerland"/>
</Grid>
<StackPanel Visibility="{Binding ElementName=ToggleButton, Path=IsChecked}">
<Label Content="Lastname: Eastwood"/>
<Label Content="Phone: 0041 11 222 33 44"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
<!--<ListView.View>
<GridView >
<GridViewColumn Header="+" DisplayMemberBinding="{Binding Path=IsCollapsible, Mode=OneWay}"/>
<GridViewColumn Header="RgNr" DisplayMemberBinding="{Binding Path=RechnungsNr, Mode=OneWay}" />
<GridViewColumn Header="ESR" DisplayMemberBinding="{Binding Path=Length, Mode=OneWay}"/>
<GridViewColumn Header="S" DisplayMemberBinding="{Binding Path=Status, Mode=OneWay}"/>
<GridViewColumn Header="M" DisplayMemberBinding="{Binding Path=AktuelleMahnStufe, Mode=OneWay}" />
</GridView>
</ListView.View>-->
</ListView>
这似乎是工作,但我想不通我怎么可能通过点击的columnHeader使这个排序。 。 有任何想法吗?
谢谢,这看起来不错,但我怎么能在ListView整合这个(这样我就可以再整理)? – 2009-07-22 17:27:15