<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Les forums de JeBulle.net – [Vb.Net][1.1] Champ NumericUpDown et DataBinding => bogué ?]]></title>
		<link>https://forums.jebulle.net/topic/524/vbnet11-champ-numericupdown-et-databinding-bogue/</link>
		<atom:link href="https://forums.jebulle.net/feed/rss/topic/524/" rel="self" type="application/rss+xml" />
		<description><![CDATA[Messages les plus récents de [Vb.Net][1.1] Champ NumericUpDown et DataBinding => bogué ?.]]></description>
		<lastBuildDate>Fri, 12 May 2006 15:52:32 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: [Vb.Net][1.1] Champ NumericUpDown et DataBinding => bogué ?]]></title>
			<link>https://forums.jebulle.net/post/6297/#p6297</link>
			<description><![CDATA[<p>Plus ça va et plus je suis content de ne pas en faire !!</p>]]></description>
			<author><![CDATA[null@example.com (Cyberbob002)]]></author>
			<pubDate>Fri, 12 May 2006 15:52:32 +0000</pubDate>
			<guid>https://forums.jebulle.net/post/6297/#p6297</guid>
		</item>
		<item>
			<title><![CDATA[[Vb.Net][1.1] Champ NumericUpDown et DataBinding => bogué ?]]></title>
			<link>https://forums.jebulle.net/post/6296/#p6296</link>
			<description><![CDATA[<p>Bonjour, bonjour,</p><p>Je n&#039;attends pas de solution ici. J&#039;ouvre cette discussion uniquement pour signaler un problème sur lequel je suis tombé et qui m&#039;a causé une sacrée de perte de temps.</p><p>Ce problème concerne l&#039;utilisation du champ <strong>NumericUpDown</strong> lorsqu&#039;il est branché sur un champ d&#039;une base de données.</p><p>L&#039;environnement est le suivant : <strong>WinXp Home SP2, Visual Basic .Net 2003, FW 1.1 SP1</strong>.</p><p>Prenons un contexte d&#039;exemple pour illustrer le problème : une fenêtre est composée d&#039;une <strong>listBox</strong> et de <strong>champs</strong> (TextBox, NumericUpDown, ComboBox, etc...). La <strong>listBox</strong> contient une liste d&#039;enregistrements d&#039;une table. Les <strong>champs</strong> sont tous branchés sur des champs de la table grâce à la propriété <strong>DataBinding</strong>. Le fonctionnement est simple : si l&#039;on sélectionne un élément dans la listBox, tous les champs se mettent à jour tous seul avec les valeurs de l&#039;enregistrement courant. Je précise que les propriétés des champs ont leurs valeurs par défaut, mise à part la propriété <strong>DataBinding</strong>.</p><p>Vous en conviendrez, ce que je viens de décrire est un fonctionnement ultra classique et largement utilisé dans bon nombre d&#039;applications.</p><p>Maintenant, je prends un <strong>NumericUpDown</strong> présent parmi les objets que j&#039;ai placé dans la fenêtre. Sa propriété <strong>Minimum</strong> qui définit la valeur minimum qu&#039;il peut prendre vaut <strong>0</strong>. Je change cette valeur pour la mettre à <strong>1</strong> parce que je ne veux pas que mon utilisateur puisse mettre 0 pour ce champ. Je <strong>recompile</strong>. J&#039;ouvre la fenêtre concernée : <strong>les données ne s&#039;affichent plus dans la listBox !</strong>. C&#039;est à n&#039;y rien comprendre...et d&#039;ailleurs je n&#039;y comprends rien <img src="https://forums.jebulle.net/img/smilies/wink.png" width="15" height="15" alt="wink" />...</p><p>Le constat est le suivant : <strong>si l&#039;on définit une valeur minimale &gt; 0 d&#039;un NumericUpDown qui est branché sur un champ de base de données, il se produit un événement dont je ne connais pas la cause qui plante le chargement des enregistrements.</strong> ! Cela m&#039;a valu quelques heures de questionnement intense sur ce que j&#039;avais bien pu écrire dans mon code pour que ce problème se produise. J&#039;en suis arrivé à refaire une fenêtre entièrement et en plaçant chaque objet un par un, en recompilant à chaque modification, pour pouvoir déterminer la source du problème...et croyez-moi, quand on en arrive là, ça bouffe du temps !!</p><p>Une autre fois, j&#039;étais tombé sur ce problème mais avec la valeur maximale. Si je chargeais un enregistrement dont la valeur du champ était supérieure à la valeur max définie, il se produisait la même chose. Je trouve moyennement normal que tout se bloque lorsque cela se produit ; bref passons. Mais là, j&#039;ai vérifié, je suis certain que les valeurs que je charge sont bien comprises dans l&#039;intervalle de valeurs de mon NumericUpDown.</p><p><strong>Ma solution</strong> est simple : je laisse la propriété <strong>Minimum</strong> à <strong>0</strong> pour ne pas contrarier Vb et <strong>je gère moi-même</strong> la limite inférieure avec une toute petite procédure appelée à chaque changement de la valeur du champ.</p><p>Voilà, vive Vb ! Je serais bien sûr ravi de voir une réponse à ce message pour me montrer que j&#039;ai tord et que je me trompe royalement...</p>]]></description>
			<author><![CDATA[null@example.com (SamRay1024)]]></author>
			<pubDate>Fri, 12 May 2006 10:09:09 +0000</pubDate>
			<guid>https://forums.jebulle.net/post/6296/#p6296</guid>
		</item>
	</channel>
</rss>
