Quiero llenar mi DataGrid en C# con un Dictonary. Ya configuré mi diccionario como ItemsSource de DataGrid. Pero no se muestran datos ... También configuré AutoGenerateColumns en verdadero. ¿Dónde está el error? Gracias de antemanoRellenar WPF DataGrid en C# con un diccionario <String, String>
16
A
Respuesta
22
intenta especificar las columnas de forma explícita:
<DataGrid.Columns>
<DataGridTextColumn Header="Key" Binding="{Binding Key}" />
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
</DataGrid.Columns>
5
Los siguientes trabajos para mí. No necesita establecer columnas explícitamente.
XAML
<Window x:Class="DictionaryDataGridDemo.SingleDictView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:DictionaryDataGridDemo"
Title="SingleDictView"
Width="525"
Height="350">
<Window.DataContext>
<local:SingleDictViewModel />
</Window.DataContext>
<Grid>
<DataGrid HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
AutoGenerateColumns="True"
ItemsSource="{Binding MyDictionary}">
<!--<DataGrid.Columns>
<DataGridTextColumn Header="Key" Binding="{Binding Key}" />
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
</DataGrid.Columns>-->
</DataGrid>
</Grid>
</Window>
modelo de vista
using System.Collections.Generic;
namespace DictionaryDataGridDemo
{
public class SingleDictViewModel
{
public Dictionary<double, string> MyDictionary { get; set; }
public SingleDictViewModel()
{
MyDictionary = new Dictionary<double, string>();
MyDictionary.Add(100, "A100");
MyDictionary.Add(200, "B200");
MyDictionary.Add(300, "C300");
}
}
}
0
Asegúrese de que AutoGenerateColumns se establece en False.
<DataGrid
AutoGenerateColumns="False"
ItemsSource="{Binding MyDictionary}">
<DataGrid.Columns>
<DataGridTextColumn Header="Key" Binding="{Binding Key}" />
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
</DataGrid.Columns>
</DataGrid>
Cuestiones relacionadas
- 1. enlazar datagrid a la lista <string[]> wpf
- 2. WPF: Vincular DataGrid a la lista <String>
- 3. Guardar un diccionario <String, Int32> en C# - ¿Serialización?
- 4. ¿Por qué no puedo crear un diccionario <string, dictionary <string, string >>?
- 5. ¿Convertir Diccionario <String,Int> al Diccionario <String, SomeEnum> using LINQ?
- 6. ¿Qué significa el Diccionario <string, />?
- 7. Navegue por el diccionario <string, int> C#
- 8. WPF datagrid con MVVM
- 9. Diccionario <string, MyObject> o List <MyObject> con C# 3.5?
- 10. convertir un IOrderedEnumerable <KeyValuePair <string, int>> en un diccionario <string, int>
- 11. C# Convert List <string> a Dictionary <string, string>
- 12. C++ - error con include <string>
- 13. WPF DataGrid AutoColumn través ICustomTypeDescriptor
- 14. Estilo WPF DataGrid-Silverlight DataGrid?
- 15. cómo iterar un diccionario <string, string> en orden inverso (de último a primero) en C#?
- 16. WPF textblock vinculante con la lista <string>
- 17. WPF: copia de un DataGrid
- 18. Wpf DataGrid problema
- 19. Preordenamiento de un DataGrid en WPF
- 20. Forma fácil de poblar un diccionario <cadena, Lista <string>>
- 21. C# cast Dictionary <string, AnyType> to Dictionary <string, Object> (Involving Reflection)
- 22. WPF Datagrid Performance
- 23. Filtro WPF DataGrid
- 24. WPF DataGrid pegar
- 25. cómo convertir ListItemCollection (dropdownlist.items) a un diccionario <string, string>?
- 26. WPF MVVM Enlace Checkbox.IsChecked a un elemento con nombre en un Dictionary <string, bool>
- 27. ¿Es esto un error de WPF Datagrid?
- 28. Cómo convertir Dictionary <string, object> a Dictionary <string, string> en C#
- 29. Diccionario .NET Serialize <string, string> en JSON Clave Valor objeto par
- 30. WPF DataGrid AutoSize Issue