2014-02-06 28 views
0

我有一個列表框,我想保持第一個索引固定,其餘所有滾動。我正在使用WPF技術。 任何人都可以幫助我。謝謝ListBoxitems,保持第一個索引固定,其餘所有滾動

我使用兩個不同的模板進行綁定。 這是我的代碼。

 <ListBox.ItemContainerStyle> 
      <Style TargetType="{x:Type ListBoxItem}"> 
       <Setter Property="IsEnabled" Value="{Binding isEnable}"/> 
      </Style> 
     </ListBox.ItemContainerStyle> 

     <ListBox.ItemsSource> 
      <CompositeCollection> 
       <CollectionContainer x:Name="collection_item_data" /> 
       <CollectionContainer x:Name="dbCollection" /> 
      </CompositeCollection> 
     </ListBox.ItemsSource> 

     <ListBox.Resources> 
      <DataTemplate DataType="{x:Type EBS:SingleItem}" > 
       <StackPanel Orientation="Vertical" x:Name="stk"> 
        <StackPanel Orientation="Horizontal" TextBlock.Foreground="White"> 
         <StackPanel.Background> 
          <LinearGradientBrush StartPoint="0,0" EndPoint="0,1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> 
           <LinearGradientBrush.GradientStops> 
            <GradientStop Color="#FFD3F1F9" Offset="0" /> 
            <GradientStop Color="#FF70AED7" Offset="0.991" /> 
           </LinearGradientBrush.GradientStops> 
          </LinearGradientBrush> 
         </StackPanel.Background> 
         <TextBlock Width="160" Text="Item" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Style" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Brand" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Color" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="70" Text="Size" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Price" FontWeight="Bold" Margin="2" TextAlignment="Center" />        
         <TextBlock Width="50" Text="Qty" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Tax" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
         <TextBlock Width="100" Text="Total" FontWeight="Bold" Margin="2" TextAlignment="Center" /> 
        </StackPanel> 
        <StackPanel TextBlock.FontFamily="Rupee Foradian" x:Name="stk_add_item" Orientation="Horizontal"> 
         <ComboBox ItemsSource="{Binding dsItem}" DisplayMemberPath="Product_Name" SelectedValuePath="Product_Code" 
            SelectionChanged="auto_item_SelectionChanged" x:Name="auto_item" Width="160" Margin="2" Loaded="auto_item_Loaded" > 
         </ComboBox> 
         <ComboBox x:Name="combo_style" Margin="2" Width="100" ItemsSource="{Binding DsStyle}" DisplayMemberPath="Style_Name" SelectedValuePath="ID" SelectionChanged="combo_style_SelectionChanged" Loaded="combo_style_Loaded" /> 
         <ComboBox x:Name="combo_brand" Margin="2" Width="100" ItemsSource="{Binding DsBrand}" DisplayMemberPath="Brand" SelectedValuePath="ID" SelectionChanged="combo_brand_SelectionChanged" Loaded="combo_brand_Loaded" /> 
         <ComboBox x:Name="combo_color" Margin="2" Width="100" ItemsSource="{Binding dsColor}" DisplayMemberPath="Color_Name" SelectedValuePath="ID" SelectionChanged="combo_color_SelectionChanged" Loaded="combo_color_Loaded" />        
         <ComboBox x:Name="combo_size" Margin="2" Width="70" ItemsSource="{Binding dsSize}" DisplayMemberPath="Size_Name" SelectedValuePath="ID" SelectionChanged="combo_size_SelectionChanged" Loaded="combo_size_Loaded" /> 
         <xctk:WatermarkTextBox Width="100" TextAlignment="Right" Margin="2" Watermark="Price" MaxLength="10" my2:TextBoxMaskBehavior.Mask="Decimal" my2:TextBoxMaskBehavior.MinimumValue="0" my2:TextBoxMaskBehavior.MaxLength="10" > 
          <TextBox.Style> 
           <Style TargetType="TextBox"> 
            <Setter Property="Text" Value="{Binding PriceString, UpdateSourceTrigger=PropertyChanged}" /> 
            <Style.Triggers> 
             <Trigger Property="Control.IsFocused" Value="True"> 
              <Setter Property="Text" Value="{Binding Price, StringFormat=F2, UpdateSourceTrigger=PropertyChanged}" /> 
             </Trigger> 
            </Style.Triggers> 
           </Style> 
          </TextBox.Style> 
         </xctk:WatermarkTextBox> 
         <xctk:WatermarkTextBox TextAlignment="Right" Text="{Binding Quantity,UpdateSourceTrigger=PropertyChanged}" Width="50" Margin="2" Watermark="Qty" MaxLength="6" PreviewTextInput="WatermarkTextBox_PreviewTextInput" /> 
         <Rectangle Fill="White" Height="26" Margin="2" Width="100" /> 
         <xctk:WatermarkTextBox TextAlignment="Right" Text="{Binding TotalString,UpdateSourceTrigger=PropertyChanged}" Width="130" Margin="2" Watermark="Total" IsReadOnly="True" IsReadOnlyCaretVisible="True" KeyDown="WatermarkTextBox_KeyDown" /> 
        </StackPanel> 
       </StackPanel> 
      </DataTemplate> 
      <DataTemplate DataType="{x:Type EBS:Items}"> 
       <StackPanel IsEnabled="{Binding isEnable}" TextBlock.FontFamily="Rupee Foradian" Orientation="Horizontal"> 
        <TextBlock Text="{Binding ItemName}" Margin="2" Width="160" /> 
        <TextBlock Text="{Binding Style_Name}" Margin="2" Width="100" /> 
        <TextBlock Text="{Binding Brand_Name}" Margin="2" Width="100" /> 
        <TextBlock Text="{Binding Color_Name}" Margin="2" Width="100" /> 
        <TextBlock Text="{Binding Size}" Margin="2" Width="70" /> 
        <TextBlock Text="{Binding PriceString}" TextAlignment="Right" Margin="2" Width="100" /> 
        <TextBlock Text="{Binding Quantity}" TextAlignment="Right" Margin="2" Width="50" /> 
        <TextBlock Text="{Binding Tax, StringFormat=F2}" TextAlignment="Right" Margin="2" Width="100" /> 
        <TextBlock Text="{Binding TotalString}" TextAlignment="Right" Margin="2" Width="130" /> 
       </StackPanel> 
      </DataTemplate> 
     </ListBox.Resources> 

    </ListBox> 

回答

0

我沒有,如果這可以用一個列表框來實現,但如果您使用兩個列表框下面一個其他(赫克的位),你可以讓你的工作情況。

只是在當前使用的列表框的上方再添加一個列表框。資源將兩者相同(但明顯!)

類似這樣的東西。

<Stackpanel> 
<Listbox name="lb1"/> 
<Listbox name="lb2"/> 
</Stackpanel> 

,並指定在LB1和列表作爲項目源LB2的休息列表的第一個項目,使LB1垂直unscrollable

這就是我們如何做一個列表框水平,垂直unscrollable

<Listbox name="lb1" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Disabled"/> 
相關問題