2010-02-19 51 views
0

采取我甲肝一类,其存储文件信息与作为ITZ的ObservableCollection列表中的项目时,数据被从观察集合

进口System.Collections.ObjectModel

公共类NameList中 名称列表继承的ObservableCollection(中的FileInfo)

' Methods 
Public Sub New() 
    MyBase.Add(New FileInfo("Willa", "Cather", "warning", "err 1")) 
    MyBase.Add(New FileInfo("Isak", "Dinesen", "warning", "err 1")) 
    MyBase.Add(New FileInfo("Victor", "Hugo", "warning", "err 1")) 
    MyBase.Add(New FileInfo("Jules", "Verne", "warning", "err 3")) 
    MyBase.Add(New FileInfo("Victor", "Hugo", "warning", "err 1")) 
    MyBase.Add(New FileInfo("Jules", "Verne", "warning", "err 3")) 
End Sub 

末级

公共类的FileInfo

Public _name As String 
Public _path As String 
Public _image As String 
Public _errorGrp As String 

Public Property ImageIcon() As String 
    Get 
     Return _image 
    End Get 
    Set(ByVal value As String) 
     _image = value 
    End Set 
End Property 

Public Property PathFile() As String 
    Get 
     Return _path 
    End Get 
    Set(ByVal value As String) 
     _path = value 
    End Set 
End Property 

Public Property Name() As String 
    Get 
     Return _name 
    End Get 
    Set(ByVal value As String) 
     _name = value 
    End Set 
End Property 

Public Property ErrorGroup As String 
    Get 
     Return _errorGrp 
    End Get 
    Set(ByVal value As String) 
     _errorGrp = value 
    End Set 
End Property 

Public Sub New(ByVal fileName As String, ByVal filePath As String, ByVal image As String, ByVal errorGrp As String) 
    Name = fileName 
    PathFile = filePath 
    ImageIcon = image 
    ErrorGroup = errorGrp 
End Sub 

末级

我需要此结合其将根据该我试图errorGroup 我码进行分组的XAML ListView项是

<Window.Resources > 
    <mydata:NameList x:Key="NameListData"/> 

    <!-- <DataTemplate x:Key="IconListViewItem" > 
     <StackPanel Orientation="Horizontal" > 
      <Image Source="/listViewGroupin;component/Images/ViewType.jpg" Height="19" Width="25" ></Image> 
      <TextBlock Foreground="DarkBlue" Text="{Binding ImageIcon}"/> 
      <TextBlock Foreground="DarkBlue" Text="{Binding Name}"/> 
     </StackPanel> 
    </DataTemplate>--> 

    <CollectionViewSource x:Key='src' 
         Source="{Binding Source={StaticResource NameListData}}"> 
     <CollectionViewSource.GroupDescriptions> 
      <!-- <PropertyGroupDescription PropertyName="ErrorGroup" />--> 
      <PropertyGroupDescription PropertyName="ErrorGroup"/> 
     </CollectionViewSource.GroupDescriptions> 
    </CollectionViewSource> 

</Window.Resources> 
<Grid> 
    <ListView ItemsSource="{Binding Source={StaticResource src}}" 
     IsSynchronizedWithCurrentItem="True" > 
     <ListView.GroupStyle > 
      <GroupStyle > 
       <GroupStyle.ContainerStyle> 
        <Style TargetType="{x:Type GroupItem}"> 
         <Setter Property="Margin" Value="0,0,0,5"/> 
         <Setter Property="Template"> 
          <Setter.Value> 
           <ControlTemplate TargetType="{x:Type GroupItem}"> 

            <GroupBox BorderBrush="Transparent" > 
             <GroupBox.Header > 
              <StackPanel Orientation="Horizontal" > 

               <TextBlock Text="{Binding Name}" 
           Margin="5,0,0,0" Width="100"/> 
               <Border Height=".2" Width="300" Background="Blue" ></Border> 
              </StackPanel> 
             </GroupBox.Header> 
            </GroupBox> 
           </ControlTemplate> 
          </Setter.Value> 
         </Setter> 
        </Style> 
       </GroupStyle.ContainerStyle> 
      </GroupStyle> 
     </ListView.GroupStyle> 

     <ListView.ItemContainerStyle> 
      <Style TargetType="{x:Type ListViewItem}"> 
       <Setter Property="BorderThickness" Value="1" /> 
       <Setter Property="Width" Value="Auto" /> 
       <Setter Property="FontSize" Value="10.4" /> 
      </Style> 
     </ListView.ItemContainerStyle> 

     <ListView.View > 
      <GridView AllowsColumnReorder="False"> 
       <GridViewColumn Width=" 250" Header="File" DisplayMemberBinding="{Binding Name }"> 
       </GridViewColumn> 
       <GridViewColumn Header="Path" Width="350" DisplayMemberBinding="{Binding PathFile}"> 
       </GridViewColumn> 
       <GridViewColumn Header="Error" Width="350" DisplayMemberBinding="{Binding ErrorGroup}"> 
       </GridViewColumn> 
      </GridView> 
     </ListView.View> 
    </ListView> 
</Grid> 

它只给我组名称和组但不包含项目 请帮我

+0

请人答我...... plzzzzzzzzzz :( – shraddha 2010-02-19 11:14:26

回答

1

您已将ListView.GroupStyle定义为GroupBox。 GroupBox是一个HeaderedContentControl。 您已经定义的组头,但你也需要定义一个占位符项目 -

<GroupBox.Content> 
    <ItemsPresenter /> 
</GroupBox.Content>