以下只是獲得命名空間中的類, if t.isclass then
其他的你可以判斷, if t.isvaluetype then結構, if t.isinte***ce介面
把這個命名空間中的類例項化:a.createinstance(t.fullname)
同樣你可以根據這個類,取得它其中有的屬性system.componentmodel.typedescriptor.getproperties(t)
也可以給屬性付值,也可以獲得事件:system.componentmodel.typedescriptor.getevents(t),
其他的看看msdn就知道了。
以下只作為參考:
private sub page_load(byval sender as system.object, byval e as system.eventargs) handles mybase.load
dim dt as datatable
dt = getclassname("webcontrol")
for i as integer = 0 to dt.rows.count - 1
if dt.rows(i)(0).tostring.tolower = "textbox" then
call setclasspropertyvalue(dt.rows(i)(2), "text", "123")
end if
next
end sub
private function getclassname(byval namespacestr as string) as datatable
dim a as system.reflection.assembly
dim t as type
dim dt as datatable
dim dr as datarow
dt = new datatable
dt.columns.add(new datacolumn("classname"))
dt.columns.add(new datacolumn("classfullname"))
dt.columns.add(new datacolumn("instanceclass"))
a = system.reflection.assembly.load(namespacestr)
for each t in a.getexportedtypes
if t.isclass then
dr = dt.newrow
dr("classname") = t.name
dr("classfullname") = t.fullname
dr("instanceclass") = a.createinstance(t.fullname)
dt.rows.add(dr)
dt.acceptchanges()
end if
next
return dt
end function
private sub setclasspropertyvalue(byval t as type, byval propertystr as string, byval value as string)
dim cc as system.web.ui.controlcollection
dim pd as system.componentmodel.propertydescriptor
dim pdc as system.componentmodel.propertydescriptorcollection
pdc = system.componentmodel.typedescriptor.getproperties(t)
pd = pdc.find(propertystr, false)
pd.setvalue(t, value)
end sub
Confluence 檢視乙個空間中的所有頁面
所有的 confluence 頁面都會儲存在乙個空間中。你可以使用頁面檢視來檢視乙個空間的最近更新列表和所有頁面。希望訪問頁面檢視 進入頁面所在的空間,然後在辦理中選項頁面。或者,如果你使用的是文件主題的話,在螢幕的頂部選擇瀏覽 頁面 browse pages 空間中的近期更新的頁面和所有頁面的繼承...
在乙個專案中所有的Ajax功能用乙個頁面來實現
在乙個專案中用到了ajax非同步,需要由乙個aspx頁面的pageload事件來讀取後台資料,如果有多少個ajax功能就寫多少個頁面,不可取,可用乙個頁面來實現,如下 ajaxpage.aspx頁面 protected void page load object sender,eventargs e...
c 如何獲取某一命名空間下的所有的類的資訊
如果是當前下的。用assembly.getexecutingassembly gettypes 如果是外部dll,用assembly.load namespace gettypes 原理是反射,所以上面一定要加上using system.reflection 示例 var classes assem...