zoukankan      html  css  js  c++  java
  • WPF

    WPF中添加Event

    1. ListBox中添加Event

    <ListBox x:Name="itemsControl"  BorderThickness="0" ContextMenuService.IsEnabled="{Binding IsContextMenuOpen,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"
                                                                                         ScrollViewer.HorizontalScrollBarVisibility="Disabled" 
                                                                                         Focusable="True"
                                                                                         ItemsSource="{Binding MyCollection}" 
                                                                                         Style="{StaticResource EquipmentListStyle}" HorizontalAlignment="Stretch" 
                                                                                         Background="WhiteSmoke" SelectionMode="Single"
                                                                                         PreviewMouseLeftButtonDown="itemsControl_PreviewMouseLeftButtonDown" 
                                                                                         ContextMenuOpening="itemsControl_ContextMenuOpening">
                                                                                    <ListBox.Resources>
                                                                                        <Style TargetType="{x:Type ListBoxItem}">
                                                                                            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
                                                                                            <Setter Property="VerticalContentAlignment" Value="Top"/>
                                                                                            <Setter Property="Focusable" Value="True"></Setter>
                                                                                            <Setter Property="ContextMenu"  Value="{StaticResource PanelContextMenu}"/>
                                                                                            <EventSetter Event="LostFocus" Handler="ListBoxItem_LostFocus"/>
                                                                                            <EventSetter Event="LostKeyboardFocus" Handler="ListBoxItem_LostKeyboardFocus"/>
                                                                                        </Style>
                                                                                    </ListBox.Resources>
                                                                                </ListBox>
    

     code behind 代码

    private void ListBoxItem_LostFocus(object sender, RoutedEventArgs e)
            {
                //((SolidColorBrush)(sender as ListBoxItem).Resources["SelectionColorKey"]).Color = Colors.Transparent;
            }
    
            private void ListBoxItem_LostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
            {
                //ListBoxItem lbi = sender as ListBoxItem;
                //if (lbi != null)
                //{
                //    ((SolidColorBrush)lbi.Resources["SelectionColorKey"]).Color = Colors.Transparent;
                //}
                //((SolidColorBrush)(sender as ListBoxItem).Resources["SelectionColorKey"]).Color = Colors.Transparent;
            }

     显示Menu

    <ContextMenu x:Key="MyContextMenu" StaysOpen="False" Opened="MyContextMenu_Opened">
                    <MenuItem x:Name="menuItemEdit" Header="Edit" 
                          Click="ContextMenu_Edit_Click">
                    </MenuItem>
                    <MenuItem x:Name="menuItemTest" Header="Test" 
                          Click="ContextMenu_Test_Click">
                    </MenuItem>
    
    </ContextMenu>
    

    Menu event code behind

    private void ContextMenu_Edit_Click(object sender, RoutedEventArgs e)
    {
    }
    

      

  • 相关阅读:
    2020 企业远程研发总结 —— 回首抗疫一年
    CODING X C-Life:云端 DevOps 加速企业数智化
    CODING 联合 TKE,让应用发布更便捷
    CODING 再携手腾讯云 Serverless,让开发者跑步上云
    代码托管从业者 Git 指南
    推荐计划 | 推荐好友用 CODING,获高额返现奖励
    仰望天空,脚踏实地 —— CODING OKR 全新上线
    在.NET中体验GraphQL
    C#规则引擎RulesEngine
    武装你的WEBAPI-OData常见问题
  • 原文地址:https://www.cnblogs.com/mantian/p/4140377.html
Copyright © 2011-2022 走看看