Я играл и смотрел вокруг, как связать вид модели с видом, но я не могу понять это.У меня есть представление под названием Поиск, и я хочу связать его с SearchModelView.Представление имеет одну кнопку и одно текстовое поле и выглядит:
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >
<ComboBox Height="23" HorizontalAlignment="Left" Margin="12,40,0,0" Name="comboBox1" VerticalAlignment="Top" Width="174" />
<Label Content="Client:" Height="28" HorizontalAlignment="Left" Margin="0,12,0,0" Name="label1" VerticalAlignment="Top" Width="71" />
<Label Content="Client Reference:" Height="28" HorizontalAlignment="Left" Margin="0,69,0,0" Name="label2" VerticalAlignment="Top" Width="117" />
<TextBox
x:Name="clientRefTxt"
Text="{Binding Path=ClientRef, ValidatesOnDataErrors=True, UpdateSourceTrigger=PropertyChanged}"
Height="23"
HorizontalAlignment="Left"
Margin="12,103,0,0"
VerticalAlignment="Top"
Width="174" />
<Button
Content="Search Debtors"
Height="23"
HorizontalAlignment="Left"
Margin="12,140,0,0"
Name="button1"
VerticalAlignment="Top"
Width="89"
Command="{Binding Path=SearchCommand}"/>
</Grid>
И я хочу, чтобы оно связывалось с SearchViewModel:
пространство имен Master.ViewModel{
public class SearchViewModel:WorkspaceViewModel
{
RelayCommand _searchCommand;
readonly Search _search;
#region Search Properties
public string ClientRef
{
get { MessageBox.Show("GET CLIENTREF"); return _search.ClientRef; }
set
{
MessageBox.Show("SET CLIENTREF");
if (value == _search.ClientRef)
return;
_search.ClientRef = value;
base.OnPropertyChanged("ClientRef");
}
}
#endregion
public ICommand SearchCommand
{
get
{
MessageBox.Show("SEARCHCOMMAND");
if (_searchCommand == null)
{
_searchCommand = new RelayCommand(
param=> this.Search(),
param=> this.CanSearch
);
}
return _searchCommand;
}
}
public void Search()
{
MessageBox.Show("SEARCHING");
}
bool CanSearch
{
get { return true; }
}
}
}
Я удалил все сборки сверху, но предположил, что они все есть.Также обратите внимание, что SearchViewModel находится в отдельном dll, а не в exe с View.Любая помощь была бы большой или, по крайней мере, указатель в направлении записи, я уже читал статью MSDN о MVVM, и это не помогло ... Мне нужно лучшее изложение о связывании этих частей.Заранее спасибо.PS Еще несколько подробностей: SearchViewModel принадлежит Master.ViewModel SearchView является частью GUI. У меня есть представление и представление о том, как работают связанные объекты, я не уверен, как связать представление с моделью представления