| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 | 
							- using System;
 
- using System.Threading;
 
- using System.Threading.Tasks;
 
- using System.Windows;
 
- using System.Windows.Controls;
 
- using System.Windows.Input;
 
- namespace MECF.Framework.UI.Client.CenterViews.Dialogs
 
- {
 
-     public partial class FullKeyboard : Window
 
-     {
 
-         //public FullKeyboard()
 
-         //{
 
-         //    InitializeComponent();
 
-         //}
 
-         private String valueString;
 
-         public String ValueString
 
-         {
 
-             get { return valueString; }
 
-         }
 
-         public FullKeyboard(String inputTitle, String inputvalue)
 
-         {
 
-             InitializeComponent();
 
-            
 
-             FullKeyboardTitle.Text = inputTitle;
 
-             tbValue.Text = inputvalue;
 
-            // tbValue.SelectionStart = inputvalue.Length;
 
-             valueString = inputvalue;
 
-         }
 
-         //通过判断按钮的content属性来做对应处理,以简化大量按钮的编程
 
-         private void Button_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 
-         {
 
-             if (e.StylusDevice != null)
 
-             {
 
-                 e.Handled = true;
 
-             }
 
-             else
 
-             {
 
-                 Button clickedButton = (Button)sender;    //获取click事件触发源,即按了的按钮
 
-                 SetButtonValue(clickedButton);
 
-                 e.Handled = true;
 
-             }
 
-         }
 
-         private void Button_PreviewTouchDown(object sender, TouchEventArgs e)
 
-         //{
 
-        // private void ButtonGrid_Click(object sender, RoutedEventArgs e)
 
-         {
 
-             Button clickedButton = (Button)sender;    //获取click事件触发源,即按了的按钮
 
-             SetButtonValue(clickedButton);
 
-             e.Handled = true;
 
-         }
 
-         private void Button_PreviewTouchUp(object sender, TouchEventArgs e)
 
-         //{
 
-         // private void ButtonGrid_Click(object sender, RoutedEventArgs e)
 
-         {
 
-             Button clickedButton = (Button)sender;    //获取click事件触发源,即按了的按钮
 
-             SetButtonValue(clickedButton);
 
-             e.Handled = true;
 
-         }
 
-         private void Button_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 
-         {
 
-             if (e.StylusDevice != null)
 
-             {
 
-                 e.Handled = true;
 
-             }
 
-             else
 
-             {
 
-                 Button clickedButton = (Button)sender;    //获取click事件触发源,即按了的按钮
 
-                 SetButtonValue(clickedButton);
 
-                 e.Handled = true;
 
-             }
 
-         }
 
-         public bool IsFristClick { get; set; } = true;
 
-         private void SetButtonValue(Button clickedButton)
 
-         {
 
-             if ((String)clickedButton.Content == "Clear")
 
-             {
 
-                 tbValue.Text = "";
 
-             }
 
-             else if ((String)clickedButton.Content == "DEL")
 
-             {
 
-                 if (tbValue.Text.Length > 0)
 
-                 {
 
-                     tbValue.SelectionStart = tbValue.SelectionStart == 0 ? tbValue.Text.Length : tbValue.SelectionStart;
 
-                     if (tbValue.Text.Length > tbValue.SelectionStart)
 
-                     {
 
-                         var selectionIndex = tbValue.SelectionStart;
 
-                         if (tbValue.SelectionStart > 0)
 
-                         {
 
-                             tbValue.Text = tbValue.Text.Remove(tbValue.SelectionStart - 1, 1);
 
-                         }
 
-                         tbValue.SelectionStart = selectionIndex > 0 ? selectionIndex - 1 : 0;
 
-                     }
 
-                     else
 
-                     {
 
-                         tbValue.Text = tbValue.Text.Substring(0, tbValue.Text.Length - 1);
 
-                         tbValue.SelectionStart = tbValue.Text.Length;
 
-                     }
 
-                 }
 
-             }
 
-             else if ((String)clickedButton.Content.ToString().ToLower() == "Space".ToLower())
 
-             {
 
-                 tbValue.Text += " ";
 
-                 tbValue.SelectionStart = tbValue.Text.Length;
 
-             }
 
-             else if ((String)clickedButton.Content == "OK")
 
-             {
 
-                 if (tbValue.Text == "") { valueString = " "; }
 
-                 else
 
-                 {
 
-                     valueString = tbValue.Text;
 
-                 }
 
-                 this.DialogResult = true;
 
-                 this.Close();
 
-             }
 
-             else if ((String)clickedButton.Content == "Cancel")
 
-             {
 
-                 this.DialogResult = false;
 
-                 this.Close();
 
-             }
 
-             else if ((String)clickedButton.Content == "A/a")
 
-             {
 
-                 int count = ButtonGrid.Children.Count;
 
-                 for (int i = 0; i < count; i++)//add yujiao 2021/10/25 添加特殊字符
 
-                 {
 
-                     Button buttonTemp = ButtonGrid.Children[i] as Button;
 
-                     String contentTemp = buttonTemp.Content as String;
 
-                     var a = contentTemp[0];
 
-                     switch (i)
 
-                     {
 
-                         case 0:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "!" : "1";
 
-                             break;
 
-                         case 1:
 
-                             buttonTemp.Content = contentTemp[0] < 57 ? "@" : "2";
 
-                             break;
 
-                         case 2:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "#" : "3";
 
-                             break;
 
-                         case 3:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "$" : "4";
 
-                             break;
 
-                         case 4:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "%" : "5";
 
-                             break;
 
-                         case 5:
 
-                             buttonTemp.Content = contentTemp[0] < 57 ? "^" : "6";
 
-                             break;
 
-                         case 6:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "&" : "7";
 
-                             break;
 
-                         case 7:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "*" : "8";
 
-                             break;
 
-                         case 8:
 
-                             buttonTemp.Content = contentTemp[0] < 58 ? "_" : "9";
 
-                             break;
 
-                         case 9:
 
-                             buttonTemp.Content = contentTemp[0] > 47 ? "," : "0";
 
-                             break;
 
-                         case 29:
 
-                             buttonTemp.Content = contentTemp[0] < 58 ? ":" : "-";
 
-                             break;
 
-                         case 37:
 
-                             buttonTemp.Content = contentTemp[0] > 82 ? "." : "Space";
 
-                             break;
 
-                             //default:
 
-                     }
 
-                 }
 
-                 for (int i = 10; i < count - 6; i++)
 
-                 {
 
-                     Button buttonTemp = ButtonGrid.Children[i] as Button;
 
-                     String contentTemp = buttonTemp.Content as String;
 
-                     buttonTemp.Content = contentTemp[0] > 90 ? contentTemp.ToUpper() : contentTemp.ToLower();
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 if (IsFristClick)
 
-                 {
 
-                     IsFristClick = false;
 
-                     tbValue.Text = "";
 
-                 }
 
-                 var startIndex = tbValue.SelectionStart;
 
-                 tbValue.Text = tbValue.Text.Insert(startIndex, (String)clickedButton.Content);
 
-                 tbValue.SelectionStart = startIndex + 1;
 
-                 //tbValue.Text += (String)clickedButton.Content;
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |