小编use*_*180的帖子

使用基于objecttype的不同itemcontainerstyles

我有一个带有集合的列表框

ObservableCollection<BaseObject> _baseObjects;
public ObservableCollection<BattlegroundBaseObject> BaseObject
{
    get { return _baseObjects?? (_baseObjects= new ObservableCollection<BaseObject>()); }
} 
Run Code Online (Sandbox Code Playgroud)

该集合有两个来自BaseObject的子项.一个是另一个图像的路径..更多的是来了

我现在需要两个基于孩子的不同的ItemContainerStyles

<ListBox.ItemContainerStyle>

     <Style BasedOn="ListBoxItem" TargetType="ListBoxItem"  x:Name="ListBoxPathLineStyle">
        <Setter Property="Template">
            <Setter.Value>
               <ControlTemplate TargetType="ListBoxItem">
                     <Path Stroke="{Binding ObjectColor}" Data="{Binding PathGeometryData}" />                        
               </ControlTemplate>
             </Setter.Value>
      </Setter>

       <!-- Alternative Template for other type -->
      <Setter Property="Template">
           <Setter.Value>
               <ControlTemplate TargetType="ListBoxItem">
                   <Image Source="howTheHellCares.png"/>                                           
               </ControlTemplate>
           </Setter.Value>
      </Setter>               
   </Style> 
</ListBox.ItemContainerStyle>
Run Code Online (Sandbox Code Playgroud)

目前较低的二传手总是被带走,但我需要区别对待......某人知道怎么做?

wpf styles listboxitem

1
推荐指数
1
解决办法
1717
查看次数

标签 统计

listboxitem ×1

styles ×1

wpf ×1