2010-05-18 55 views

回答

1

設置ItemContainerStyle以根據需要設置邊距和填充。混合將有助於這個模板。

然後您也可以考慮設置DataTemplate。

0

其他人可能比我知道得更好,但我會覆蓋列表框的數據模板。對於每個單獨的項目,明確指定文本控件的大小。

例如:

<ListBox Width="400" Margin="10" ItemsSource="{Binding Path=MyDataItems}"> 
    <ListBox.ItemTemplate> 
    <DataTemplate> 
     <TextBlock Text="{Binding Path=TaskName}" Height="27" /> 
    </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

這絕對是一個多一點的工作,但我不知道有多少你還能對一個列表框做。

0

好吧,我不知道ü要真的是什麼,我只是有一個猜測,美希望減少出現在您的列表框中listboxitems之間的空間,那麼你可以用保證金的幫助做到這一點:

<Style x:Key="LedgerListBoxItem" TargetType="ListBoxItem"> 
     <Setter Property="Padding" Value="3"/> 
     <Setter Property="Height" Value="24"/> 
     <Setter Property="Width" Value="330"/> 
     <Setter Property="HorizontalContentAlignment" Value="Left"/> 
     <Setter Property="VerticalContentAlignment" Value="Top"/> 
     <Setter Property="Background" Value="Transparent"/> 
     <Setter Property="BorderThickness" Value="1"/> 
     <Setter Property="TabNavigation" Value="Local"/> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="ListBoxItem"> 
        <Grid Background="{TemplateBinding Background}">      
         <Grid HorizontalAlignment="Stretch" **Margin="0 4 0 4"**> 
          <Grid.ColumnDefinitions> 
           <ColumnDefinition Width="4"/> 

           <ColumnDefinition /> 
          </Grid.ColumnDefinitions> 
          <Image Grid.Column="1" Source="../Styles/Images/icon-exception.png" 
    /> 

         </Grid> 
         <Rectangle x:Name="FocusVisualElement" RadiusY="4" RadiusX="4" Stroke="#FF6DBDD1" StrokeThickness="0" Visibility="Collapsed" /> 
        </Grid> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

爲了更好地幫助您,請您只需發佈我們的代碼。 :)