请选择 进入手机版 | 继续访问电脑版

在C#中建立“SUB”或“Function“供重复调用

[复制链接]
苍野狼步 发表于 2021-1-1 18:30:22 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
2020翻篇之际,祝您2021年安全康健快乐!

 
VB.NET下创建SUB或Function比力容易了,好比 sub ChangeText, 然后 sub体内写上 TextBox1.text = "Hello World",如此,调用ChangeText即可更改TextBox1的内容,
Sub Changetext
       TextBox1.text = "Hello World"
End Sub
 
但在C#下却不尽相同, 在C#下实现类似功能的方式更机动:
 
方法1:在Form1下实现

创建新程序,则创建了Form1这个最根本的类,而且一般情况下也会定义Form1为启动窗体,程序主体一般也在其下面编写,可以在Form1类中编写一个类似的方法
public void ChangeText(Form1 form1, string InString)
{
        form1.TextBox1.Text = InString;
}
调用该方法也比力简单
ChangeText(this, "Hello World");
只需改变调用的字符串,即可由方法完成在TextBox1中的内容显示,固然也可以在方法中完成绘图等更复杂的重复性需调用的功能。
由于此方法自己是在Form1中,因此,参数Form1 form1可以不用,改写为:
public void ChangeText(string InString)
{
        this.TextBox1.Text = InString;
}
调用 ChangeText(this, "Hello World");
甚至不带任何参数,直接在方法中实现对控件的显示的改变:
public void ChangeText()
{
        this.TextBox1.Text = "Hello World";
}
调用 ChangeText();
如果想再简单,则可以去掉this,默认就是this
public void ChangeText(string InString)
{
        TextBox1.Text = InString;
}
调用 ChangeText(this, "Hello World");
甚至不带任何参数,直接在方法中实现对控件的显示的改变:
public void ChangeText()
{
        TextBox1.Text = "Hello World";
}
调用 ChangeText();
看,它多像Sub功能! Instring前加上ref、调用前也加上ref,即可返回字符串或别的范例的值,和Byref通报地点相类似。
还可以这么返回的

public strinig ChangeText(string InString)
{
        TextBox1.Text = InString;
        return "Returning string from method";
}
调用 string BackString = ChangeText(this, "Hello World");
 
方法2:在新类中实现

除原有类Form1外,我们还可以添加别的类,好比MyClass, 同样的方法可以写在这个类的下面
public void ChangeText(Form1 form1, string InString)
{
        form1.TextBox1.Text = InString;
}
调用方法与在Form1中实现有所差别
MyClass mc = new MyClass();
mc.ChangeText(this, "Hello World");
差别在于首先实例化MyClass,然后调用mc类中的方法予以实现,与Form1类中实现大同小异。
 
别的方法

好比,可以在类中调用公有变量,在公有变量中的Set方法实现,稍微绕了一点但也同样实现需要的功能,在此就不做更多说明白。

来源:https://blog.csdn.net/weixin_45707491/article/details/112016419
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )