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>