目前我有一個ListView(使用Details View)。我想實現這樣的行爲,即當用戶選擇單個項目(日誌條目)時,日誌條目將擴展(從一行到多行)以提供有關發生錯誤的更多詳細信息。c#如何擴展ListView中的項目以佔用多行?
我的問題是這樣的:這可能嗎?如果是這樣,是否有一個很好的資源可以幫助我?
編輯:
如果我HAVE使用WPF,那麼我猜病態使用ElementHost的與控制。但是,我絕對不知道如何設計/編碼/使用WPF組件。有什麼建議麼?
目前我有一個ListView(使用Details View)。我想實現這樣的行爲,即當用戶選擇單個項目(日誌條目)時,日誌條目將擴展(從一行到多行)以提供有關發生錯誤的更多詳細信息。c#如何擴展ListView中的項目以佔用多行?
我的問題是這樣的:這可能嗎?如果是這樣,是否有一個很好的資源可以幫助我?
編輯:
如果我HAVE使用WPF,那麼我猜病態使用ElementHost的與控制。但是,我絕對不知道如何設計/編碼/使用WPF組件。有什麼建議麼?
編輯:對不起,這是WPF
我用來實現同樣的事情訣竅是創建觸發器,以顯示其默認爲一塌次柵。
嘗試了這一點:
<ListBox ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Height="20" >
<TextBlock Text="Not Selected"></TextBlock>
</Grid>
<Grid x:Name="selectedOnlyGrid" Grid.Row="1" Visibility="Collapsed">
<TextBlock Text="Selected"></TextBlock>
</Grid>
</Grid>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListBoxItem}, AncestorLevel=1}, Path=IsSelected}" Value="True">
<Setter Property="Visibility" Value="Visible" TargetName="selectedOnlyGrid" />
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我很抱歉,但我的理解在這一點上,XAML和WPF都是完全不存在的。你能解釋一下這段代碼的作用嗎?謝謝。 – 2008-11-19 08:11:09
不是你的問題的直接答案,但我認爲 你最好在這種情況下與網格。
不幸的是,我需要的列headdings使用時是ListView控件中存在的詳細信息視圖 – 2008-11-18 10:37:21
有通過在CodeProject上這裏的帖子寫着:Extended List Box
應該有你需要它:)所有的信息
一種方式與一個ListView做這將是動態添加當您選擇「父」時,您需要添加新的ListViewItem。同樣,當選擇更改爲其他項目時,您需要將其刪除。
您也可能想要覆蓋默認的向上/向下行爲以跳過子項目。
你會喜歡WPF ;-) – lesscode 2008-11-18 11:08:11