从 SelectedItem RadGridView 获取值

Getting value from SelectedItem RadGridView

我正在使用这个列表:

List<AssetListData> assetList = new List<AssetListData>();

填充数据,并使用此代码将其绑定到我的 RadGridView

AssetList_GridView.ItemsSource = assetList;

现在我有一个包含两列(NameType)的 GridView。我在 AssetList_GridView 中创建了一个 ContextMenu,由 EditDelete 组成。我需要在单击 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 could not be found.

为什么我这里不能访问assetList,但是GridViewItemsSource可以访问? 有什么简单的方法可以从点击的行中获取价值吗?

SelectedItem 无法重新输入到 LIST,如果您想重新输入它,您应该使用

var typeValue = ((AssetListData)AssetList_GridView.SelectedItem).assetType;