利用VB.NET函数获取控件属性
我正在尝试创建一个函数,该函数将为控件(在本例中为combobox)创建一些属性。但是,接收控件不会从函数中获取值属性 下面是创建属性的函数利用VB.NET函数获取控件属性,vb.net,function,combobox,controls,Vb.net,Function,Combobox,Controls,我正在尝试创建一个函数,该函数将为控件(在本例中为combobox)创建一些属性。但是,接收控件不会从函数中获取值属性 下面是创建属性的函数 Public Function getComboboxProperties(ByVal dt As DataTable) As ComboBox Try Dim ctrlCombobox As New ComboBox ctrlCombobox.BindingContext = New BindingContext
Public Function getComboboxProperties(ByVal dt As DataTable) As
ComboBox
Try
Dim ctrlCombobox As New ComboBox
ctrlCombobox.BindingContext = New BindingContext
ctrlCombobox.DataSource = dt
ctrlCombobox.ValueMember = "ID"
ctrlCombobox.DisplayMember = "DESCRIPTION"
getComboboxProperties = ctrlCombobox
Catch ex As Exception
Return Nothing
MessageBox.Show(ex.ToString, "", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try End Function
新值通过以下方式传递:
cmbCompanyStatus = clsCommon.getComboboxProperties(dtStatus)
当我打开表单时,combobox cmbCompanyStatus不会拾取数据源,并且不显示任何内容
任何帮助都将不胜感激。谢谢你 我认为可能的原因是作业中出现了异常。声明
Return Nothing
MessageBox.Show(ex.ToString, "", MessageBoxButtons.OK, MessageBoxIcon.Error)
你走错了路;该函数将返回而不显示消息框
而且
是一种相当老式的返回值的方式;在VB.Net中,人们更愿意
Return ctrlCombobox
从这个角度看,您似乎缺少以下内容:
' Snip
ctrlCombobox.DataSource = dt
ctrlCombobox.ValueMember = "ID"
ctrlCombobox.DisplayMember = "DESCRIPTION"
ctrlCombobox.DataBind() ' <-------------------- This line here
getComboboxProperties = ctrlCombobox
这似乎是一个愚蠢的问题,但cmbCompanyStatus分配到哪里?也许可以编辑该问题,使您所问的稍微清楚一点?
' Snip
ctrlCombobox.DataSource = dt
ctrlCombobox.ValueMember = "ID"
ctrlCombobox.DisplayMember = "DESCRIPTION"
ctrlCombobox.DataBind() ' <-------------------- This line here
getComboboxProperties = ctrlCombobox