我在表单项目中添加了一个CSharp类。现在我想从Class。
访问表单控件我正在使用这段代码和隐式var,如下所示:
var form = frmClasses.ActiveForm as frmClasses;
使用此代码,我将表单Modifiers设置为public,将代码放置为方法/函数,我可以访问类中的表单控件。
问题是每次我需要调用表单控件时我必须使用var和上面的整行代码。是否有一种更简单的方法可以减少冗余? 示例:类中的每个方法/函数都需要调用表单控件,从而使用Var引用表单控件。
看看下面的代码,你会注意到我使用Var来调用每个表单控件。
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
namespace Classes
{
class ClsProperties
{
//VALIDATE TEXTBOX
public static void validateTextBox()
{
var form = frmClasses.ActiveForm as frmClasses;
if (form.txtMyTextBox.Text.Trim().Length == 0)
{
form.txtMyTextBox.BackColor = Color.Aquamarine;
}
}
//VALIDATE RADIO BUTTON
public static void validateRadio()
{
var form = frmClasses.ActiveForm as frmClasses;
if (form.radBtnColor.Checked == false)
{
form.lblShowError.ForeColor = Color.Aquamarine;
}
}
}
}
表格代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Classes
{
public partial class frmClasses : Form
{
public frmClasses()
{
InitializeComponent();
}
private void btnSubmit_Click(object sender, EventArgs e)
{
ClsProperties.validateRadio();
ClsProperties.validateTextBox();
}
}
}
我可以将所有验证放在一个方法中,但我只是想说明如何使用类调用多个方法。
有没有更好的方法来访问类中的表单元素?
的Merci