Comment puis-je lier un jeu de données à un datapareeater (Windows Powerpack) au moment de l'exécution?
-
15-11-2019 - |
Question
Je tente actuellement d'utiliser la commande Windows Powerpack DataRepeater pour afficher des données à partir d'un jeu de données.
Jusqu'à présent, le DataRepeeater reconnaît que le jeu de données résultant appelé de la base de données contient 8 lignes, mais je n'ai pas pu obtenir les 3 textes de texte (que j'ai mis dans l'élémentTemplate de mon DataRepeeater) pour montrer la réelledonnées dans lesdites rangées.
DataTable DT = BL.GetDataTable();
BindingSource bSource = new BindingSource();
bSource.DataSource = DT;
DR.DataSource = bSource;
txtEmail.DataBindings.Add("Text", bSource, "Email");
txtID.DataBindings.Add("Text", bSource, "ID");
txtName.DataBindings.Add("Text", bSource, "Name");
Ainsi, une fois que le DataRepeater (DR) est vu, vous pouvez voir 8 rangées.Si les zones de texte sont laissées pour faire partie du Dr, ils se répètent sur chacune de ces 8 lignes, mais sans données.
Si je retire les boîtes de texte et placez-les directement sur le formulaire, alors comme une navigation par DR, les boîtes de texte affichent les données correspondantes.Qui n'est pas le comportement que je cherche.
Est-ce que quelqu'un sait que les boîtes de texte afficheront les données et faire partie du datapareeater?
La solution
I know it is a bit late, but stil if you haven't found the answer yet, I'll post this jost in case.
I had the same problem which I solved by binding elements to data first and only then did the datarepeater binding. So your code should look like this:
txtEmail.DataBindings.Add("Text", "", "Email");
txtID.DataBindings.Add("Text", "", "ID");
txtName.DataBindings.Add("Text", "", "Name");
DataTable DT = BL.GetDataTable();
bSource.DataSource = DT;
DR.DataSource = bSource;