• <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 閱讀(709) 評論(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
            久久99国内精品自在现线| 嫩草伊人久久精品少妇AV| 久久精品成人国产午夜| 国产精品天天影视久久综合网| 97久久久久人妻精品专区| 色综合久久88色综合天天| 2019久久久高清456| 99久久精品免费看国产一区二区三区 | 久久久久久国产a免费观看黄色大片| 性做久久久久久久久老女人| 蜜臀av性久久久久蜜臀aⅴ麻豆| 秋霞久久国产精品电影院| 精品国产日韩久久亚洲| 国产精品久久久久影院嫩草| 热久久最新网站获取| 久久精品中文字幕久久| 伊人久久大香线蕉av一区| 久久99精品久久久久久野外| 久久精品一区二区国产| 97精品依人久久久大香线蕉97 | 久久久久高潮综合影院| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 2021国产精品久久精品| 久久青青草原亚洲av无码| 久久久久久国产精品无码下载| 99久久精品国产麻豆| 成人综合久久精品色婷婷| 久久夜色精品国产| 久久99精品久久久久久野外| 99久久精品费精品国产| 久久久久亚洲爆乳少妇无| 97久久超碰国产精品旧版| 日韩精品久久无码中文字幕| 午夜精品久久久久久| 亚洲午夜无码AV毛片久久| 思思久久好好热精品国产| 久久男人中文字幕资源站| 久久亚洲高清综合| 久久久久久国产a免费观看黄色大片| 人妻无码精品久久亚瑟影视| 亚洲日本va午夜中文字幕久久|