【发布时间】:2013-07-22 20:20:12
【问题描述】:
所有,我有一个自定义的DataGridView 控件,它覆盖了DataGidView 的OnItemsSourceChanged 事件。在此事件中,我需要获取对相关 ViewModel 中数据集的引用。代码是
public class ResourceDataGrid : DataGrid
{
protected override void OnItemsSourceChanged(
System.Collections.IEnumerable oldValue,
System.Collections.IEnumerable newValue)
{
if (Equals(newValue, oldValue))
return;
base.OnItemsSourceChanged(oldValue, newValue);
ResourceCore.ResourceManager manager = ResourceCore.ResourceManager.Instance();
ResourceDataViewModel resourceDataViewModel = ?? // How do I get my ResourceDataViewModel
List<string> l = manger.GetDataFor(resourceDataViewModel);
...
}
}
在标记的行上,我想知道如何获得对ResourceDataViewModel resourceDataViewModel 的引用。原因是我有多个选项卡,每个选项卡都包含一个数据网格和关联的 ViewModel,ViewModel 包含一些我需要检索的数据[通过ResourceManager](或者还有其他更好的方法吗?)。
问题是,从上面的事件中,我怎样才能得到关联的ResourceDataViewModel?
感谢您的宝贵时间。
【问题讨论】:
-
你不能用
this.DataContext as ResourceDataViewModel吗? -
+1 表示评论。我刚刚意识到我可以直接从
DataContext投射 - 傻。非常感谢...如果您感到困扰,这可能是一个答案。感谢您的宝贵时间。