例如cs文件this.button1.Enabled=true被优化为button1.Enabled=true。感觉这样可读性很差,区别不了控制项还是一般类。
1,微软从节省劳动量的角度出发,能省略的就推荐尽量省略,画蛇添足没必要,除非你在方法中定义了和某个类成员同名的变数,此时加上this以做区别是必要的。
2,不只是WinForm,VS里的所有工程都会推荐开发者省略this以及其他所有可以简化的写法。C#搞出那么多语法糖就是为了能让你比其他语言少打几个字母。
3,问题描述里说不加this没法区分控制项还是一般类,这完全是命名的问题,跟加不加this没有任何关系。我在窗体类里加一个不是控制项的成员,你加上this就能看出来?非要解决这个问题,你可以试试早已过时的匈牙利命名法。事实上,button1看不出来是一个表示按钮的控制项吗?建议多背几个单词。
4,VS后台自动生成的代码倒是都加上了this的,如果你有心查看过InitializeComponents方法的实现。
除非个别比如变数名同名的情况,画蛇添足的写 this 都要打屁股。
不止winform,所有c#的类方法调用当前对象属性、栏位、方法的时候都会这么建议
有人让我试试2019