Tengo un proyecto de Silverlight (WP7) y me gustaría vincular una enumeración a un cuadro de lista. Esta es una enumeración con valores personalizados, ubicada en una biblioteca de clases. ¿Cómo hago esto?¿Cómo puedo vincular una enumeración a mi listbox?
Respuesta
En Silverlight (WP7), el método Enum.GetNames() no está disponible. Puede usar los siguientes
public class Enum<T>
{
public static IEnumerable<string> GetNames()
{
var type = typeof(T);
if (!type.IsEnum)
throw new ArgumentException("Type '" + type.Name + "' is not an enum");
return (
from field in type.GetFields(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)
where field.IsLiteral
select field.Name).ToList<string>();
}
}
El método estático arrojará la colección de cadenas enumerable. Puede vincular eso a un elemento de la lista de elementos. Como
this.listBox1.ItemSource = Enum<Colors>.GetNames();
Then , la siguiente pregunta es, ¿cómo asignas, con el enlace, el valor enum seleccionado a una propiedad en el modelo de vista? He estado buscando respuestas, pero no pude encontrar ningún recurso, se aprecia cualquier dirección. Gracias. – K2so
@ K2so Puede tener una propiedad en el modelo de vista vinculada a la propiedad 'SelectedItem' de' ListBox'. verifique la siguiente muestra que podría ayudarlo. https://sites.google.com/site/html5tutorials/BindingEnum.zip –
¿Te importa si tomo prestado este código y te lo atribuyo en mi proyecto PhoneyTools para que la gente pueda usarlo? http://phoney.codeplex.com? –
convertir el enum a una lista (o similar) - como por How do I convert an enum to a list in C#?
entonces se unen a la lista convertido.
Utilice un convertidor para hacerlo. Consulte http://geekswithblogs.net/cskardon/archive/2008/10/16/databinding-an-enum-in-wpf.aspx.
- 1. Cómo vincular una enumeración al cuadro combinado
- 2. ¿Cómo puedo vincular los datos una lista de cadenas a un ListBox en WPF/WP7?
- 3. ¿Puedo acceder a una enumeración C# en mi vista Razor?
- 4. ¿Cómo puedo vincular un StackPanel a mi ViewModel?
- 5. WPF Enlazando un ListBox a una enumeración, mostrando el atributo de descripción
- 6. ¿Cómo puedo vincular una ArrayList a un PreparedStatement en Oracle?
- 7. Cómo vincular el diccionario al ListBox en winforms
- 8. ¿Cómo puedo vincular una ObservableCollection de ViewModels a un MenuItem?
- 9. ¿Cómo puedo crear una enumeración usando números?
- 10. Cómo enlazar indicadores Enums a ListBox En MVVM
- 11. ¿Cómo puedo vincular el evento a sessionStorage?
- 12. ¿Puedo vincular una propiedad del componente Flex a una función?
- 13. ¿Cómo puedo obtener una barra de desplazamiento vertical en mi ListBox?
- 14. es mi enumeración correcta?
- 15. SVN: ¿Cómo puedo vincular parte de mi fuente a otro repositorio?
- 16. ListBoxPara no vincular mi viewmodel
- 17. Android - Cómo puedo vincular mi aplicación gratuita a la versión Pro
- 18. ¿Cómo puedo vincular los datos de Telerik ComboBox a mi modelo de datos
- 19. convertir una enumeración a otro tipo de enumeración
- 20. WPF vinculante a Listbox selectedItem
- 21. ¿Puedo vincular xslt a otro xslt?
- 22. Cómo vincular una imagen y apuntar a una nueva ventana
- 23. En backbone.js, ¿cómo puedo vincular una clave al documento
- 24. ¿Cómo puedo vincular un GridView a un objeto personalizado?
- 25. ¿Puedo vincular una WPF TreeView a un único nodo raíz?
- 26. ¿Cuándo puedo vincular una función a otro nombre?
- 27. ¿Cómo puedo vincular un FormView ASP.NET a un solo registro?
- 28. ¿Cómo se puede vincular una casilla de verificación bidireccional a un bit individual de una enumeración de indicadores?
- 29. ¿Cómo puedo vincular una biblioteca dinámica en Xcode?
- 30. Cómo vincular Smartgit a GitHub
posible duplicado de [Databinding an enum property to ComboBox in WPF] (http://stackoverflow.com/questions/58743/databinding-an-enum-property-to-a-combobox-in-wpf) – Andrey