WPF 自定义下拉列表

Posted 秋荷雨翔的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 自定义下拉列表相关的知识,希望对你有一定的参考价值。

XAML代码:

<Popup x:Name="popupStrategy" StaysOpen="False" PopupAnimation="Scroll" Width="190" MaxHeight="300" AllowsTransparency="True">
    <Border Background="#0c5ab0" BorderThickness="1" BorderBrush="#1992d6">
        <ItemsControl x:Name="itemsCtrlStrategy" Grid.Row="1" Margin="0 5 0 0">
            <ItemsControl.Template>
                <ControlTemplate>
                    <ScrollViewer HorizontalScrollBarVisibility="Auto" MinHeight="{Binding ElementName=itemsCtrlStrategy,Path=ActualHeight}" MinWidth="{Binding ElementName=itemsCtrlStrategy, Path=ActualWidth}">
                        <ItemsPresenter></ItemsPresenter>
                    </ScrollViewer>
                </ControlTemplate>
            </ItemsControl.Template>
            <ItemsControl.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel/>
                </ItemsPanelTemplate>
            </ItemsControl.ItemsPanel>
            <ItemsControl.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal" Margin="5 0 5 5" Background="#00234E">
                        <Button x:Name="btnStrategySel" Click="btnStrategySel_Click_1" CommandParameter="{Binding}" Width="120" Margin="5" VerticalAlignment="Center" HorizontalAlignment="Center">
                            <Button.Template>
                                <ControlTemplate>
                                    <TextBlock Text="{Binding Info.STRATEGYNAME}" ToolTip="{Binding Info.STRATEGYNAME}" Width="120" Foreground="#1ba4f6" VerticalAlignment="Center" HorizontalAlignment="Center"></TextBlock>
                                </ControlTemplate>
                            </Button.Template>
                        </Button>
                        <Button x:Name="btnStrategyDel" Margin="5" CommandParameter="{Binding}" Click="btnStrategyDel_Click_1" Height="12" Width="12" VerticalAlignment="Center" HorizontalAlignment="Center">
                            <Button.Template>
                                <ControlTemplate>
                                    <Image Name="img" Width="12" Height="12" VerticalAlignment="Center" Source="/SunCreate.CombatPlatform.Client.Resources;component/Image/CaseExportStrategy/删除.png"></Image>
                                </ControlTemplate>
                            </Button.Template>
                        </Button>
                        <Button x:Name="btnStrategyEdit" Margin="5" CommandParameter="{Binding}" Click="btnStrategyEdit_Click_1" Height="12" Width="12" VerticalAlignment="Center" HorizontalAlignment="Center">
                            <Button.Template>
                                <ControlTemplate>
                                    <Image Name="img" Width="12" Height="12" VerticalAlignment="Center" Source="/SunCreate.CombatPlatform.Client.Resources;component/Image/CaseExportStrategy/编辑.png"></Image>
                                </ControlTemplate>
                            </Button.Template>
                        </Button>
                    </StackPanel>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>
    </Border>
</Popup>
View Code

后台代码:

itemsCtrlStrategy.ItemsSource = strategyViewModelList;

popupStrategy.PlacementTarget = sender as Button;
popupStrategy.Placement = PlacementMode.Bottom;
popupStrategy.IsOpen = true;
View Code

效果图:

 

以上是关于WPF 自定义下拉列表的主要内容,如果未能解决你的问题,请参考以下文章

WPF 自定义ComboBox下拉颜色控件

Visual Studio 自定义代码片段在方法定义的参数列表中不起作用

ABAP如何自定义下拉列表 .

在片段中创建自定义列表视图时出错。必需的活动,找到的片段

在片段中创建自定义列表视图时出错所需活动,找到片段

Summernote - 有序和无序列表的自定义下拉列表