zoukankan      html  css  js  c++  java
  • WPF与输入法冲突研究之一:百度输入法会导致WPF程序的崩溃!

    哎,在学习和使用了WPF一段时间之后,有点感觉WPF是个不太成熟的框架,不知道是我学的太肤浅,还是WPF得BUG太多!

     

    >>>>>>>模拟场景<<<<<<<<<

    客户:能用WPF给我编写个小程序吗?

    程序员:哦,什么样的小程序?

    客户:一旦我输入什么东西,你就给我弹出一个警告框。

    程序员:这么简单?!还有别的要求吗?

    客户支持各种输入法,不能崩溃!

    程序员:哦,收您500可以吗?

    客户:嗯,不贵~程序员:(嘿嘿,人傻钱多)

     

    >>>>>>>程序员开始努力的写代码<<<<<<<<<

    程序员心说,这么简单的程序,就不用XAML了,一个cs文件就搞定,看我的!

     

    using System;
    using System.Windows;
    using System.Windows.Controls;
    
    namespace BaiduCrashesWPF
    {
        /// <summary>
        /// Interaction logic for App.xaml
        /// </summary>
        public class Program
        {
            [STAThread]
            static void Main(string[] args)
            {
                TextBox txtBox = new TextBox();
                txtBox.Width = 400;
                txtBox.TextChanged += txtBox_TextChanged;
    
                Window mainWin = new Window();
                mainWin.WindowStartupLocation = WindowStartupLocation.CenterScreen;
                mainWin.Content = txtBox;
                mainWin.SizeToContent = SizeToContent.WidthAndHeight;
    
                Application app = new Application();
                app.ShutdownMode = ShutdownMode.OnMainWindowClose;
                app.Run(mainWin);
            }
    
            static void txtBox_TextChanged(object sender, TextChangedEventArgs e)
            {
                MessageBox.Show("用中文输入法了吗?假如你用了,那么这个程序马上就要崩溃了!");
            }
        }
    }
    



    好了,运行下试试。。。输入中文!打“中国”两个字(一定要2个字哦)!哇,对话框弹出来了!哇,程序崩溃了!!!TNND!经测试,百度输入法,谷歌v2输入法、QQ、搜狗输入法都会导致程序的崩溃。微软拼音输入法不会,谷歌v3不会。

     

    具体原因,见以后的博文~~~

     

    客户支持各种输入法,不能崩溃!

  • 相关阅读:
    @Aspect 注解使用详解
    Mysql的4个隔离级别
    【学习笔记】二分类问题中的“最大似然”与“交叉熵损失”概念的理解
    【转】对“先验概率”与“后验概率”概念的通俗理解
    nginx——安装部署vue项目
    JWT
    Vue——自定义组件实现vmodel
    Vue——子级向父级传递参数
    SpringBoot2(十四)全局异常切面
    Vue——ElementUI表格分页
  • 原文地址:https://www.cnblogs.com/puncha/p/3876978.html
Copyright © 2011-2022 走看看