Silverlight控件我有在我加載控件的Silverlight頁面。這個控件有自己的viewmodel,我通過構造函數將它傳遞給.xaml.cs文件。但是編譯時出現錯誤。這是錯誤:加載具有自定義構造函數
{No matching constructor found on type 'MySite.Views.SearchFlyOutWin'}
我的主頁,使這樣的
xmlns:part="clr-namespace:MySite.Views;assembly=MySite"
在我MainPage.xaml中的「SearchFlyOutWin」參考我試圖加載控件這樣
<part:SearchFlyOutWin x:Name="searchFlyOutWin" Visibility="{Binding Converter={StaticResource BooleanToVisibilityConverter}, Path=IsSearchVisible}" />
我的SearchFlyOutWin.xaml.cs中的構造函數是這樣的
public SearchFlyOutWin(ISearchFlyoutViewModel viewmodel)
{
InitializeComponent();
DataContext = viewmodel;
}
我得到了我的MainPage.xaml.cs中上述錯誤時,它調用的InitializeComponent();方法。
我想我可能需要直接的CLR來調用正確的構造在這裏這條線加載searchwin當低於
<part:SearchFlyOutWin x:Name="searchFlyOutWin" Visibility="{Binding Converter={StaticResource BooleanToVisibilityConverter}, Path=IsSearchVisible}" />
如何糾正這種任何想法? ...謝謝你的時間。
不是直接。我的視圖模型也有一個構造函數。它試圖加載veiw模型時開始給構造函數未發現錯誤。我刪除了參數並將其設置爲默認常量來解決這個問題。但現在我有另一個問題。我希望將此控件設置爲默認情況下不可見,並且僅當我更改爲位於mainpage.xaml上的listbox中的特定值時纔可見。在mainpage.xaml中設置UC的數據上下文或者在mainpage.xaml.cs中編程設置數據上下文會導致控件始終可見。我現在無法隱藏它。有任何想法嗎? – user20358 2010-11-30 10:23:56