2017-09-06 2 views
0

J'essaie d'obtenir la valeur d'une seule cellule lors de la sélection d'une ou de plusieurs lignes afin de pouvoir exécuter une requête pour remplir une autre grille pour modification. Mon DataGrid est lié à partir d'un dataset renvoyé par une requête sql du service wcf. J'ai essayé d'accéder à grid.selecteditems et j'ai parcouru la documentation sur le DataGrid. Toute aide serait appréciée. Si vous avez besoin de plus d'informations, il suffit de demander!Telerik pour UWP RadDataGrid. Obtention d'une valeur de cellule unique à partir de la sélection de ligne

Répondre

+0

Des problèmes avec l'utilisation de 'grid.selecteditems'? –

+0

il donne juste le compte des éléments sélectionnés. Je peux aller dans la liste déroulante et voir toutes mes colonnes dans "Class1" (mon modèle de données utilisé), mais je ne sais pas comment accéder à la valeur des colonnes spécifiques dont j'ai besoin. – Johnathan

+0

J'ai essayé d'utiliser le nom de la colonne et l'index d'une boucle for _italic_ ** bold ** 'pour chaque élément de grid.selecteditems x = grid.selecteditems (item.ColumnName)' sans succès. cela me donne un indice hors exception. – Johnathan

Répondre

0

je peux aller dans le menu déroulant et voir toutes mes colonnes « Class1 » (mon modèle de données utilisé), mais je ne suis pas sûr de savoir comment accéder à la valeur des colonnes spécifiques i besoin.

Si dans ce cas, il semble que la propriété SelectionUnit pour la RadDataGrid est qui est la valeur par défaut. Si vous voulez l'unité pour sélectionner est une cellule dans une ligne de grille, et obtenir la valeur, vous devez définir le SelectionUnit-Cell comme suit:

<telerikGrid:RadDataGrid 
    x:Name="grid" 
    IncrementalLoadingMode="Explicit" 
    ItemsSource="{Binding}" 
    SelectionMode="Multiple" 
    SelectionUnit="Cell" 
    SelectionChanged="grid_SelectionChanged" /> 

Et pour définir une cellule lors de l'utilisation d'une sélection, vous pouvez utilisez la classe DataGridCellInfo, qui contient toutes les informations à ce sujet. Code derrière pour obtenir les valeurs à l'aide DataGridCellInfo classe par exemple:

private void grid_SelectionChanged(object sender, Telerik.UI.Xaml.Controls.Grid.DataGridSelectionChangedEventArgs e) 
{ 
    var cells = grid.SelectedItems; 
    foreach (DataGridCellInfo cell in cells) 
    { 
     System.Diagnostics.Debug.WriteLine(cell.Value); 
    } 
} 

Plus de détails s'il vous plaît référence this document.