• <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 閱讀(707) 評論(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
            亚洲中文久久精品无码ww16 | 亚洲精品综合久久| 久久综合久久鬼色| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 久久久久久久波多野结衣高潮 | 久久亚洲国产欧洲精品一| 久久精品无码一区二区三区免费 | 久久国产精品77777| 国内精品久久久久国产盗摄| 久久精品国产99国产精品亚洲| 人妻少妇久久中文字幕| 很黄很污的网站久久mimi色| 国色天香久久久久久久小说| 久久精品视频网| 亚洲国产精品无码久久久不卡| 久久99精品久久久久久不卡| 97久久精品无码一区二区天美| 久久久99精品成人片中文字幕 | 久久综合噜噜激激的五月天| 久久福利片| 久久最近最新中文字幕大全 | 亚洲va久久久久| 99久久精品免费| 无码国内精品久久人妻蜜桃 | 777米奇久久最新地址| 伊人 久久 精品| 国内精品免费久久影院| 国内精品久久国产大陆| 人妻精品久久久久中文字幕69| 欧美久久久久久精选9999| 中文字幕久久欲求不满| 久久99精品国产自在现线小黄鸭| 成人久久免费网站| 久久久久久国产a免费观看黄色大片| 精品久久久久久无码中文野结衣 | 久久亚洲sm情趣捆绑调教 | 久久精品国产黑森林| 麻豆精品久久久一区二区| 久久精品国产一区| 日本免费久久久久久久网站| 99久久国产热无码精品免费久久久久|