【发布时间】:2016-02-21 04:39:01
【问题描述】:
我正在使用这个列表:
List<AssetListData> assetList = new List<AssetListData>();
填充数据,并使用此代码将其绑定到我的RadGridView:
AssetList_GridView.ItemsSource = assetList;
现在我有一个带有两列的GridView(Name 和Type)。我在AssetList_GridView 中创建了一个ContextMenu,由Edit 和Delete 组成。单击ContextMenu 后我需要获取该值,但它失败了。我在ContextMenu 的点击事件中尝试了这段代码:
private void GridContextMenu_ItemClick(object sender, Telerik.Windows.RadRoutedEventArgs e)
{
MenuItem item = (e.OriginalSource as RadMenuItem).DataContext as MenuItem;
switch (item.Text)
{
case "Edit Asset":
var typeValue = ((assetListData)AssetList_GridView.SelectedItem).assetType;
this.AssetList_GridView.BeginEdit();
break;
case "Delete Asset":
this.AssetList_GridView.Items.Remove(this.AssetList_GridView.SelectedItem);
break;
}
}
来自var typeValue = ((assetListData)AssetList_GridView.SelectedItem).assetType;的错误说:
无法找到资产列表。
为什么我这里不能访问assetList,但我可以访问GridView ItemsSource?
有没有什么简单的方法可以从被点击的行中获取价值?
【问题讨论】:
标签: c# wpf gridview radgridview