从SelectedItem RadGridView获取价值

时间:2015-11-19 06:52:11

标签: c# wpf gridview radgridview

我正在使用此列表:

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

填写数据,并使用以下代码将其绑定到我的RadGridView

AssetList_GridView.ItemsSource = assetList;

现在我的GridView有两列(NameType)。我在ContextMenu中创建了一个AssetList_GridView,其中包含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,但我可以访问GridView ItemsSource? 有没有简单的方法从点击的行中获取价值?

1 个答案:

答案 0 :(得分:2)

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

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