在我的數據庫中,我有一個表,其中包含具有屬性「ClassName」,「AssemblyName」和「NameSpace」的userControls的不同項目,這些屬性需要使用反射初始化實例。是否有可能直接在XAML中使用反射
我的想法是要從數據庫中獲取這個集合,將集合設置爲數據上下文並動態地將這些用戶控件加載到tabcontrol中。我可以使用一個「tabItem」來包含它,並在運行時在後面的代碼中加載它。我想如果可以通過模板直接從XAML完成,那將會非常方便並且很花哨。
我一直在谷歌類似的東西,但沒有使用代碼背後沒有發現。
我想類似如下的
<TabControl.ContentTemplate>
<DataTemplate>
<xxxControl ClassName="{Binding ClassName}" AssemblyName="{Binding AssemblyName}" NameSpace="{Binding NameSpace}" />
</DataTemplate>
</TabControl.ContentTemplate>
我可以做這樣一個自定義「中,xxxcontrol」,但如果類似的東西已經存在這將是浪費時間。通過這種方式GUI可以由數據庫中的參數完整生成。
這種方法是我想到的。我希望WPF中已經存在這樣的東西,所以我沒有做到這一點我自己 – user853710
@ user853710:不是我所知道的,但寫標記擴展是相當容易的... –
是真的。 你會建議繼承哪些控件。用戶控件? TabItem的? – user853710