• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我希望你是我獨家記憶

            一段永遠封存的記憶,隨風而去
            posts - 263, comments - 31, trackbacks - 0, articles - 3
               :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

            自定義鍵盤快捷鍵

            Posted on 2010-11-29 16:55 Hero 閱讀(702) 評論(0)  編輯 收藏 引用 所屬分類: C#積累
              1using System;
              2using System.Windows;
              3using System.Windows.Controls;
              4using System.Windows.Input;
              5using System.Windows.Media;
              6
              7namespace Petzold.CommandTheMenu
              8{
              9    public class CommandTheMenu : Window
             10    {
             11        TextBlock text;
             12
             13        [STAThread]
             14        public static void Main()
             15        {
             16            Application app = new Application();
             17            app.Run(new CommandTheMenu());
             18        }

             19        public CommandTheMenu()
             20        {
             21            Title = "Command the Menu";
             22
             23            // Create DockPanel.
             24            DockPanel dock = new DockPanel();
             25            Content = dock;
             26
             27            // Create Menu docked at top.
             28            Menu menu = new Menu();
             29            dock.Children.Add(menu);
             30            DockPanel.SetDock(menu, Dock.Top);
             31
             32            // Create TextBlock filling the rest.
             33            text = new TextBlock();
             34            text.Text = "Sample clipboard text";
             35            text.HorizontalAlignment = HorizontalAlignment.Center;
             36            text.VerticalAlignment = VerticalAlignment.Center;
             37            text.FontSize = 32;     // ie, 24 points
             38            text.TextWrapping = TextWrapping.Wrap;
             39            dock.Children.Add(text);
             40
             41            // Create Edit menu.
             42            MenuItem itemEdit = new MenuItem();
             43            itemEdit.Header = "_Edit";
             44            menu.Items.Add(itemEdit);
             45
             46            // Create items on Edit menu.
             47            MenuItem itemCut = new MenuItem();
             48            itemCut.Header = "Cu_t";
             49            itemCut.Command = ApplicationCommands.Cut;
             50            itemEdit.Items.Add(itemCut);
             51
             52            MenuItem itemCopy = new MenuItem();
             53            itemCopy.Header = "_Copy";
             54            itemCopy.Command = ApplicationCommands.Copy;
             55            itemEdit.Items.Add(itemCopy);
             56
             57            MenuItem itemPaste = new MenuItem();
             58            itemPaste.Header = "_Paste";
             59            itemPaste.Command = ApplicationCommands.Paste;
             60            itemEdit.Items.Add(itemPaste);
             61
             62            MenuItem itemDelete = new MenuItem();
             63            itemDelete.Header = "_Delete";
             64            itemDelete.Command = ApplicationCommands.Delete;
             65            itemEdit.Items.Add(itemDelete);
             66
             67            // Add command bindings to window collection.            
             68            CommandBindings.Add(new CommandBinding(ApplicationCommands.Cut,
             69                                        CutOnExecute, CutCanExecute));
             70            CommandBindings.Add(new CommandBinding(ApplicationCommands.Copy,
             71                                        CopyOnExecute, CutCanExecute));
             72            CommandBindings.Add(new CommandBinding(ApplicationCommands.Paste,
             73                                        PasteOnExecute, PasteCanExecute));
             74            CommandBindings.Add(new CommandBinding(ApplicationCommands.Delete,
             75                                        DeleteOnExecute, CutCanExecute));
             76
             77
             78
             79            添加自定義鍵盤快捷鍵
             92        }

             93
             94        void RestoreExecute( object sender, ExecutedRoutedEventArgs e )
             95        {
             96            this.text.Text = "John";
             97        }

             98
             99        void CutCanExecute(object sender, CanExecuteRoutedEventArgs args)
            100        {
            101            args.CanExecute = text.Text != null && text.Text.Length > 0;
            102        }

            103        void PasteCanExecute(object sender, CanExecuteRoutedEventArgs args)
            104        {
            105            args.CanExecute = Clipboard.ContainsText();
            106        }

            107        void CutOnExecute(object sender, ExecutedRoutedEventArgs args)
            108        {
            109            ApplicationCommands.Copy.Execute( nullthis );
            110            ApplicationCommands.Delete.Execute(nullthis);
            111        }

            112        void CopyOnExecute(object sender, ExecutedRoutedEventArgs args)
            113        {
            114            Clipboard.SetText(text.Text);
            115        }

            116        void PasteOnExecute(object sender, ExecutedRoutedEventArgs args)
            117        {
            118            text.Text = Clipboard.GetText();
            119        }

            120        void DeleteOnExecute(object sender, ExecutedRoutedEventArgs args)
            121        {
            122            text.Text = null;
            123        }

            124    }

            125}

            126
            久久精品无码专区免费| 久久久久久国产精品无码超碰| av无码久久久久不卡免费网站| 99久久久精品免费观看国产| 国产精品99久久久久久宅男| 热久久国产欧美一区二区精品| 国产精品99久久久精品无码| MM131亚洲国产美女久久| 久久久中文字幕日本| 午夜精品久久久久久毛片| 亚洲国产成人久久综合一| 2020国产成人久久精品| 久久夜色tv网站| 国产色综合久久无码有码| 国产成人精品久久亚洲| 午夜精品久久久久久久| 欧美亚洲国产精品久久高清| 国产69精品久久久久9999| 亚洲成色www久久网站夜月| 久久精品国产欧美日韩| 久久精品a亚洲国产v高清不卡| 久久亚洲av无码精品浪潮| 久久超碰97人人做人人爱| 久久精品国产乱子伦| 久久中文精品无码中文字幕| 狠狠色丁香婷综合久久| 欧美大香线蕉线伊人久久| 伊人久久大香线蕉无码麻豆| 久久久久亚洲精品无码网址| 99久久精品国产一区二区| 久久天天躁狠狠躁夜夜网站| 久久人妻少妇嫩草AV蜜桃| 免费精品久久久久久中文字幕| 国产成人精品久久亚洲高清不卡 | 久久久精品人妻一区二区三区四 | 人妻精品久久久久中文字幕69| 91精品免费久久久久久久久| 青青国产成人久久91网| 亚洲国产精品婷婷久久| 久久精品国产免费| 国产精品永久久久久久久久久|