我正在寻找一种方法来添加复选框checkedchanged事件。 我想如果我的CB_Consultant(CB =复选框)被选中,它使CB_EndDate和TB_Company(文本框)是 我不知道该怎么handdle那种即使在现场点击PowerShell/.net CheckedChanged事件处理
这里是我的代码感谢帮助我
function GenerateForm {
[reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null
[reflection.assembly]::loadwithpartialname("System.Drawing") | Out-Null
$Form_UC_Main = New-Object System.Windows.Forms.Form
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Point = New-Object System.Drawing.Point
$InitialFormWindowState = New-Object System.Windows.Forms.FormWindowState
$OnLoadForm_StateCorrection=
{#Correct the initial state of the form to prevent the .Net maximized form issue
$Form_UC_Main.WindowState = $InitialFormWindowState
}
#----------------------------------------------
#region Generated Form User Creation Main Windows Code
$Form_UC_Main.Text = "User Creation software"
$Form_UC_Main.Name = "form1"
$Form_UC_Main.DataBindings.DefaultDataSourceUpdateMode = 0
$Form_UC_Main.size = new-object System.Drawing.Size(300,250)
#End of Main form windows code
#initialize the Checkboxe, if check should activate CB_EndDate and TB_Company
$CB_Consultant = New-Object System.Windows.Forms.CheckBox
$CB_Consultant.location = new-object System.Drawing.Size (124,130)
$CB_Consultant.Size = new-object System.Drawing.Size(15,14)
$CB_Consultant.UseVisualStyleBackColor = $True
$CB_Consultant.TabIndex = 0
$CB_Consultant.checkAlign = "MiddleRight"
#$CB_Consultant.Text = "Site groups change"
$CB_Consultant.DataBindings.DefaultDataSourceUpdateMode = 0
$CB_Consultant.Name = "Consultant"
$CB_Consultant.CheckState
$Form_UC_Main.Controls.Add($CB_Consultant)
$CBL_AccType = new-object System.Windows.Forms.Label
$CBL_AccType.Location = new-object System.Drawing.Size(20,130)
$CBL_AccType.size = new-object System.Drawing.Size(120,20)
$CBL_AccType.Text = "Enable if Checked :"
$Form_UC_Main.Controls.Add($CBL_AccType)
#This checkbox is disable by default, should be enable by checking CB_Consultant
$CB_EndDate = New-Object System.Windows.Forms.CheckBox
$CB_EndDate.location = new-object System.Drawing.Size(125,150)
$CB_EndDate.Size = new-object System.Drawing.Size(20,20)
$CB_EndDate.UseVisualStyleBackColor = $True
$CB_EndDate.TabIndex = 0
$CB_EndDate.enabled = $false
#$CB_EndDate.Text = "Site groups change"
$CB_EndDate.DataBindings.DefaultDataSourceUpdateMode = 0
$CB_EndDate.Name = "EndDateActivation"
$Form_UC_Main.Controls.Add($CB_EndDate)
$TBL_EndDate2 = new-object System.Windows.Forms.Label
$TBL_EndDate2.Location = new-object System.Drawing.Size(50,154)
$TBL_EndDate2.Size = new-object System.Drawing.Size(60,20)
$TBL_EndDate2.Text = "End Date:"
$Form_UC_Main.Controls.Add($TBL_EndDate2)
#This TextBox is disable by default, should be enable by checking CB_Consultant
$TB_Company = new-object System.Windows.Forms.Textbox
$TB_Company.Location = new-object System.Drawing.Size(125,170) #was 125,130
$TB_Company.Size = new-object System.Drawing.Size(150,27)
$TB_Company.DataBindings.DefaultDataSourceUpdateMode = 0
$TB_Company.enabled = $false
$TB_Company.Name = "Company Name"
$Form_UC_Main.Controls.Add($TB_Company)
$TBL_Company = new-object System.Windows.Forms.Label
$TBL_Company.Location = new-object System.Drawing.Size(50,175) #was 50,122
$TBL_Company.Size = new-object System.Drawing.Size(60,35)
$TBL_Company.Text = "Company:"
$Form_UC_Main.Controls.Add($TBL_Company)
#Save the initial state of the form
$InitialFormWindowState = $Form_UC_Main.WindowState
#Init the OnLoad event to correct the initial state of the form
$Form_UC_Main.add_Load($OnLoadForm_StateCorrection)
#Show the Form
$Form_UC_Main.ShowDialog()| Out-Null
} #end of function
GenerateForm
你好。你的回答对我今天有很大的帮助,但是我想了解我在尝试为自己解决问题时错过了什么。我多次浏览http://msdn.microsoft.com/en-us/library/system.windows.forms.checkbox(v=vs.110).aspx,但从未在任何方法或事件之前看到“Add_”。我是一个自学的编剧,所以这对你来说可能是显而易见的知识,但我很想更好地理解这一点。这与事件处理有关吗? – BSAFH