Я новичок в шаблоне MVVM и немного запутался в том, когда использовать Code Behind. Сейчас у меня очень простая форма, которая включает в себя один TextBox и один DataGrid. Я бы хотел, чтобы DataGrid изменил свой выбранный элемент на основе TextBox.
Я сделал это в Code Behind, и он отлично работает, используя следующий код:
private void textBox1_TextChanged(object sender, TextChangedEventArgs e)
{
for (int i = 0; i < dataGrid1.Items.Count; i++)
{
string cellContent = dtReferral.Rows[i][0].ToString();
try
{
if (cellContent != null && cellContent.Substring(0, textBox1.Text.Length).Equals(textBox1.Text))
{
object item = dataGrid1.Items[i];
dataGrid1.SelectedItem = item;
dataGrid1.ScrollIntoView(item);
//row.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
break;
}
}
catch { }
}
}
Теперь я просто хочу выделить элемент в Datagrid, который начинается с текста в текстовом поле, и позволяет пользователю нажимать кнопку для редактирования выбранного элемента.
Можно ли получить эту логику в файле "Код за файлом"? Или мне нужно сделать это через какую-то привязку? Если я буду делать это через View Model with Binding, любое направление будет оценено по достоинству. Спасибо.