C# MVVM良好实践?
我有一个treeView(FunctionTreeView),希望在视图和ViewModel之间交换数据 这是我的看法C# MVVM良好实践?,c#,wpf,mvvm,treeview,C#,Wpf,Mvvm,Treeview,我有一个treeView(FunctionTreeView),希望在视图和ViewModel之间交换数据 这是我的看法 private void FunctionTreeView_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) { TreeViewItem parent; int pIndex,cIndex = 0; if (e.Key == Key.Enter)
private void FunctionTreeView_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
TreeViewItem parent;
int pIndex,cIndex = 0;
if (e.Key == Key.Enter)
EnteredKeys.Length = 0;
else
EnteredKeys.Append(e.Key.ToString());
if (FunctionTreeView.Items.IndexOf(FunctionTreeView.SelectedItem) != -1)
{
//if selected is parent, get parent item.
parent = FunctionTreeView.Tag as TreeViewItem;
cIndex = -1;
}
else
{
TreeViewItem child = FunctionTreeView.Tag as TreeViewItem;
parent = ItemsControl.ItemsControlFromItemContainer(child) as TreeViewItem;
cIndex = parent.ItemContainerGenerator.IndexFromContainer(child);
}
pIndex = FunctionTreeView.ItemContainerGenerator.IndexFromContainer(parent);
ViewModel.PerformSearch(pIndex,cIndex);
PerformSearch函数位于ViewModel中。在视图中访问这样的UI元素是一种很好的做法/最佳方式吗?我是MVVM的新手
public class RelayCommand : ICommand
{
//Your Code
}
阅读以下链接。它会帮助你的
不,不是。看看,但是我不能通过命令传递值,对吗?你可以。您需要使用它,它将作为参数传递给
ICommand.Execute
@SriramSakthivel非常感谢。