Я сражался с определенной проблемой с пользовательским контролем, которым я не могу справиться.Пользовательский элемент управления Silverlight Binding Issue Lightswitch
Я пытаюсь связать управление мастером, которое я загрузил из Интернета на один из моих экранов, но по какой-то причине привязки не будут тянуть.
Я сузил проблему до одной строки кода, которая на самом деле является той, которая вызывает проблемы.
private readonly MainPageViewModel vm;
public MainPage()
{
InitializeComponent();
vm = new MainPageViewModel();
DataContext = vm;
}
это переопределение DataContext (используя MVVM шаблон, чтобы открыть главную страницу VM).
, когда я удаляю переопределение datacontext, тогда моя привязка работает отлично, но все другие функциональные возможности управления работают неправильно.
теперь ясно, что я могу что-то делать или я что-то упускаю, с вашей помощью и опытом, надеясь переустановить это.
Вот часть XAML пользовательского элемента управления, когда im привязка к моему экрану, может ли быть так, что при переопределении datacontext мне нужно добавить Source к моему привязке, если да, то какой источник?
<controls:TabItem Header="introduction"
Tag="WELCOME TO THE INSERT PRODUCT WIZARD"
Visibility="Collapsed" >
<StackPanel>
<TextBox x:Name="txtTest" Width="300" Text="{Binding Path=Screen.intBindTest, Mode=TwoWay}"/>
<ComboBox ItemsSource="{Binding Screen.vw_COUNTRIES, Mode=OneWay}"
SelectedItem="{Binding Screen.vw_COUNTRIES.SelectedItem, Mode=TwoWay}"
DisplayMemberPath="COUNTRYNAME"/>
</StackPanel>
</controls:TabItem>
Мой вопрос не как я связать SilverLight пользовательские элементы управления, моя проблема в том, когда я явно присвоить DataContext быть ViewModel то LightSwitch переплеты не работает, но если я удалить его, то Lightswitch может связать нормально, но остальная часть элемента управления сломана.
В частности, мне нужно, как явно назначить lightswitch datacontext в текстовое поле с XAML или любым другим способом.
спасибо заблаговременно.
Пробовал это, все еще не нужно, проблема в том, что когда вы переопределяете datacontext с помощью vm, он стирает экранный файл данных. –