ASP.NET la Liaison entier à la Case est Cochée, le champ
J'ai un élément de liste modèle, dans lequel j'essaie de lier la valeur entière de Checked
propriété de Case à cocher.
IsUploaded
valeur ne contient que des 0 et des 1...
<asp:ListView ID="trustListView" runat="server">
<ItemTemplate>
<asp:CheckBox ID="isUploadedCheckBox" runat="server"
Checked='<%# Bind("IsUploaded") %>' />
</ItemTemplate>
</asp:ListView>
Mais ASP.NET se plaint de ce que
Détails De L'Exception: System.InvalidCastException: Sepcified casting n'est pas valide
Même si le code suivant à l'aide de DataBinder.Eval()
œuvres,
J'ai besoin d'avoir un 2-way de liaison, il faut donc utiliser Bind()
.
<asp:CheckBox ID="isUploadedCheckBox2" runat="server"
Checked='<%# Convert.ToBoolean(
DataBinder.Eval(Container.DataItem, "IsUploaded"))) %>' />
Comment puis-je convertir 0 et de 1 pour booléenne à l'aide de Bind()
?
[RÉPONDRE]
J'ai étendu auto-généré par type de classe partielle par l'ajout d'une nouvelle propriété, mentionné dans la réponse par Justin
Fait des "IsUploaded" un peu ou autre type de données boolean au lieu d'un int une option?
est un peu.
Quel type de source de données sont vous contraignant? La liaison d'une case à cocher pour un peu à l'aide d'un objectdatasource pointant vers une table adaptateur fonctionne sans erreur pour moi.
Il s'agit d'une auto-généré type d'Entity framework.
Je ne sais pas pourquoi je ne peux pas Upvote. De toute façon, nous sommes désolés de ne pas pouvoir voter tous les grands de réponses ici. Il dit que je ne peut pas upvote à moins que les réponses sont modifié??? ...
est un peu.
Quel type de source de données sont vous contraignant? La liaison d'une case à cocher pour un peu à l'aide d'un objectdatasource pointant vers une table adaptateur fonctionne sans erreur pour moi.
Il s'agit d'une auto-généré type d'Entity framework.
Je ne sais pas pourquoi je ne peux pas Upvote. De toute façon, nous sommes désolés de ne pas pouvoir voter tous les grands de réponses ici. Il dit que je ne peut pas upvote à moins que les réponses sont modifié??? ...
OriginalL'auteur Sung M. Kim | 2009-10-13
Vous devez vous connecter pour publier un commentaire.
Si vous êtes prêt à changer de catégorie, ajouter une propriété de la classe qui est un booléen
Si non, vous pouvez avoir du succès avec un TypeConverter:
OriginalL'auteur Justin Grant
Comment sur l'ajout d'une propriété à votre classe qui fait la conversion?
et alors se lier à ce
IsUploadedBool
propriété plutôt que directement sur le sous-jacent de type INT.Marc
Je n'ai bien - sûr, merci ! Mise à jour
OriginalL'auteur marc_s
Sorte de fromage de contourner serait d'utiliser une liste déroulante avec la liste des éléments à donner le même effet:
Seriez-vous en mesure d'apporter des modifications à votre réponse? (ajouter un point ou etc.) afin que je puisse upvote votre réponse? Je considère votre réponse à être une option valable pour mon cas. Merci.
OriginalL'auteur kscott
Pour plus d'informations, visitez:
http://dhondiyals.wordpress.com/2010/05/03/binding-checkbox-with-integer-value-in-gridviewtrick/
OriginalL'auteur Kailash Dhondiyal
Comment sur (btw, je suis l'aide d'une procédure stockée)
Page Aspx
Code derrière
OriginalL'auteur sjehutch
Solution:
Salut, je suis aussi à l'aide d'Ajax notation à l'intérieur d'un GridView et je suis tombé sur ce problème. Après avoir parcouru plusieurs forums, j'ai essayé et ça a fonctionné pour moi. J'espère que cela vous aide à:
renvoie un entier, depuis que vous utilisez Vérifié qui est un entier.
OriginalL'auteur cristian